Jump to content
  • Advertisement


  • Content count

  • Joined

  • Last visited

Community Reputation

1334 Excellent

About nhold

  • Rank


  • Twitter
  • Github
  • Twitch

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. nhold

    NPC daily routine

    No, you can't do that as the GameObjects in scene (Hierarchy) doesn't exist in the same scope as the prefab, what would it reference if you unloaded the scene? There is an accepted Unity pattern of having your own run time prefab library that access prefabs by some ID\Name.
  2. nhold

    NPC daily routine

    I don't understand your question, do you have code: public GameObject someObject; Because you should be able to put a prefab on that if it's in MonoBehaviour class (Or Serialized class that is in a MonoBehaviour). Is this related to your above question? It's usually best case to pool your GameObjects. Instantiating and destroying is pretty costly at the moment.
  3. nhold

    NPC daily routine

    Programmers first rule: Nothing is ever easy. What have you actually tried? Do you have some data that describes what your NPCs should be doing at what times? Entity ID: 1 should move from <location> to <location> leaving at 13:30 and on arrive:<roam\shop\stand\gather\fight> This way you could determine what the day\time currently is and see if they should be moving to a point, or already be at a point in some state when the player gets near(Which would respawn the NPC). If they are between points you just get the percentage of time they are within (Just a line that goes as the crow flies would work fine with the entities speed) then you can lerp along it based on that, maybe add data when they should be arriving as well. Regarding your OnTriggerEnter problem, what do you mean tags? Can you ensure everything is setup correctly as shown in the Unity documentation? https://docs.unity3d.com/Manual/CollidersOverview.html (Scroll down to the bottom) https://docs.unity3d.com/Manual/LayerBasedCollision.html
  4. Context is important when dealing with code, I very rarely randomly open up code and use my C++ knowledge to find and fix a bug especially if I don't have a reason, I use my debugging skills to do that in any language. Someone well versed in C++ might not know this random piece of trivia but could easily figure out the problem and solve it. I would notice this (It seems a bit smelly to me anyway), test if it is the problem, refactor it and fix it (And I still most likely wouldn't know this trivia). When I read it you were calling private non-static methods as public static methods, which could have easily been the problem I was meant to solve (With the interviewer not even knowing about the mutex lock).
  5. Generally that is easy to test because hopefully the legacy code actually compiles and you can debug through it in some manner. Why do we have 2 singletons? Is the issue that the large things take along time to collate? Are we worried about how they are constructed because you are (Assuming the compiler errors are just typos) calling getInstance in each-others constructors? Are the typos\compiler errors supposed to be tricking me up or apart of the exercise? How did I get to looking at this code? Did I notice something odd? Bug report filed? Randomly browsing? Again, I think this exercise does not help at all. Generally you are working with actual code or responding to some behavior in context.
  6. I don't like asking for really specific language questions or algorithm implementation anymore as that's really just testing memory, most of the time you should be testing problem solving or testing for the job they'll be doing. For example, when I used to interview for gameplay programmers I would get them in for a day and together we would prototype Pokemon in a console in a language of their choice on an actual workstation and desk, full access to the internet and me and they know this beforehand so they can plan it out. Doing this shows off their actual ability, how they will be working and how they work with me which I think is more important than memory tests. We initially filtered applicants based on their finished project experience and if they sent a simple open source game or project where we could see their code.
  7. nhold

    Wizards and Warrors

    The rest of his articles in this series aren't different, I think he is trying to solve these problems with his idea of idiomatic OOP and showing why that can be bad? I am not sure.
  8. nhold

    Wizards and Warrors

    I think many of you are missing the fact that he specifically says he wants the error caught at compile time, something I don't agree is necessary, otherwise the problem is trivial.
  9. nhold

    Dimins V2018.2

    This is a pretty small update focusing on UI and abilities. I added some basic UI: It's all working off of a fairly simple UI system, all transitions are handled by transition components and all view controllers handle specific aspects. Essentially all of the view containers here (The inventory and potraits) are a small amount of C# code: public class UIPortraitContainerView : UIBaseContainerView<UIPortraitView, MinionData> { } This base class handles displaying a collection of model data (In this case MinionData) inside a list of UIPortraitView components. It also handles dragging items around to re-order and pooling the views. Then the views themselves (UIPortraitView) handles any specifics (I.e clicking on the portrait shows\hides the stats of that minion) and initialising\updating from the model. I also went ahead and fixed a lot of abilities, here is Scratch and Spark. and here is Ember and Rock Throw My next step is to improve combat in the following ways: Change to a timer based, action point turn based combat system The basic idea is minions will have speed They will also have a pool of abilities (Starting with 4 at level 1-5) Each turn will happen based on each minions speed and any initiatives Each turn a minions action points will be replenished Each ability will cost a certain number of action points Optionally: You get a random draw of 3 abilities every turn. Add status effects Stun\Sleep (Each turn is skipped for x turns) DoT (Every time a turn starts it does damage for x turns) Stat increase\decrease (increase\decrease stat for x turns (Can't go to 0) Stoned (Speed is 0, no turns get hit so no DoT and no moves) Here is the build: Dimins_2018.2.zip
  10. nhold

    Review - Unity Hub (Beta)

    There is also no way to install patch releases from hub, you have to manually install and open a project with it. I didn't run into the android problem or not finding visual studio enterprise which I also use.
  11. nhold

    A Common Thread

    I don't know of a single game that isn't a conglomerate of the entire teams vision. Yes someone has to make sure it all matches but everyone contributes to the vision.
  12. nhold

    Dimins V2018.1

    I started making a game this month as a "One Man Army". I'm not really following any kind of dev process, just working what I feel like when I feel like and using only Unity, Blender and Gimp. First I got some references for the game I want to make, I want it to be a monster collection game on pc, android and switch. Only multiplayer will be pvp. The only motivation I have is I want a game that I like to play on mobile and pc with my partner and daughter. We decided to call it Dimensional Minions (Dimins), at least as a working title. https://sketchfab.com/models/3b15fce0a6d84f99ae2770aec2b9ba9e https://shop.bitgem3d.com/products/fantasy-land-se Pokemon Ultra Sun & Moon https://play.google.com/store/apps/details?id=com.ubisoft.runeguard&hl=en Did some basic modular and tiled environment assets, turns out my modelling and unwrapping is okay but my painting is horrendous. I followed that up with a basic movement and profile system in Unity, at this point it only saved the position of the player but all other data was added as needed and it worked out of the box. The camera feels weird, I'll probably have to spend a lot of time on it. Now something a bit more meaty, I made some Ability and Minion databases to describe what ability and minions are and to give them some stats and behaviour, then a secret place where combat takes place with the ability to run, swap minion, attack and capture enemy minion. I also added a basic custom animation\tween helper and a simple fluent interface for scripting abilities and their animations to spawn particles etc as well. I made a proper minion, his name is Cubgel, and gave minions some world behaviour to roam about. My daughter wanted a mummy and daddy one with lots of babies, that's why they are different scales. Then I made another tree, cementing the fact that my art really sucks: After that debacle I worked on dialogue, got basic stuff in the dialogue can interface with the current story data found in the players profile to determine what to say or not to say. Following that I got a friend to make some pixel art based on my scribblings to give some good references to make models from, for now most of them are cubes with the pixel art on them. I then made some spawners to spawn all the minions in the world and built a small area to play in. I also added a simple walk in cylinder to heal all your minions up otherwise the game just gets impossibly hard. I guess the current goal is to kill the highest level minion spawns. I'll have to add a story at some point. I added a lot of little tweaks like nameplates for minions, animation on the cylinder and some other basic 'polish' but at the moment I am just going to upload the build and call it a night. There are probably so many bugs but it's 1 am and it's time for sleep! Dimins_2018.1.zip Give it a play and give me some feedback on my horrid camera, ui and art. Literally any feedback will be appreciated. Oh another thing, I relatively recently started\released an open source game called STD(Simple Tower Defense) and if you wanna check that out it's here, it's 64 bit only and needs the VS 2017 redist installed, it also suffers from bad art. https://github.com/nhold/td/releases PS. Is this too much media?
  13. nhold

    Critical errors in CryEngine V code

    I disagree with pretty much everyone here, I find the articles pretty interesting. It's not like he hides who he is or what he is advertising, just ignore any of these types of articles if you don't want them.
  14. They usually do.   This comes up on pretty much every PVS article - maybe the articles could link to the patch requests to head off this line of attack?     That would be awesome, I do see some changes in the referenced source but not sure if it was because of Ivans pull requests.
  15. nhold

    Open sourcing my projects and blogging again

    Very cool man and yeah time really flies.
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!