Jump to content

  • Log In with Google      Sign In   
  • Create Account

Norman Barrows

Member Since 04 Apr 2012
Offline Last Active Yesterday, 05:27 AM

#5313282 CAVEMAN: pet interactions

Posted by on 29 September 2016 - 12:54 PM

I suppose you could have the pet have an xp meter, and each time it filled up (due to the player traveling normally with the pet) the pet would generate an encounter where the player could interact with the pet, and have a chance of leveling up the pet or player in some way?


the game tracks relations between band members and NPCs in a manner similar to The SIMs.  i was thinking of making it do the same for pets.


in the way of spontaneous NPC triggered interactions for pets, about the only one i was considering was a "pet me!" action when the player was idle. or maybe coming up to you with their ball or a stick in their mouth - an obvious request for you to play with them. or maybe begging for food when you're cooking or eating.

#5313281 CAVEMAN: pet interactions

Posted by on 29 September 2016 - 12:47 PM

It seems that the type of pet is more important than the amount of interaction with the pet, you could do a kind of Pokemon thing where players attempt to capture and tame powerful animals for their abilities.


emphasis on realism in this version limits the game to dogs. so its a "flight sim" first, and a game second.  the fact that its not contrived actually makes the game even cooler.


in the original version of Caveman, all the animal types were made up, and you could try to domesticate anything.

#5313249 How do desginer design their game to be fun?

Posted by on 29 September 2016 - 08:46 AM

And i'm pretty sure if you are the one developing your game you don't find it fun.


if you don't find it fun, what makes you think anyone else will? 


It was fun when I was thinking it but on actual game its just boring


what you want to do is prototype the most basic gameplay. if that's not fun, move on to the next game idea.


the first time i dropped bombs in AIRSHIPS! and accidentally blew up my own hangar, i knew i had fun game on my hands.


by contrast, Armies of Steel II sits unfinished on my hard drive, cause its just not that fun yet for some reason. until i figure out why, there's no sense working on it.

#5313246 Applying Mathematical Functions and creating game Formulas

Posted by on 29 September 2016 - 08:13 AM

ball movement in pong is basic rectilinear physics. all the formulas have been known for hundereds(?) of years.


ball movement based on paddle movement is actually a game hack, not really realistic physics - unless you get into inelastic collisions where the ball and paddle deform slightly on contact, creating more contact time for the paddle to impart a shear force on the ball. but such shear forces would tend to induce spin, not change trajectory. and i've never heard of a pong clone that modeled ball spin.




but i want a general way/method about how to Create mathematical formulas whenever i need one.


look it up, there are already formulas for just about everything - at least everything in the real world.   if no formula exists, then the discipline you'll be wanting is "modeling and simulation", or "mathematical modeling". those are the disciplines of "making up new formulas".




when making games, if you need a formula for something that is in the real world, 90% or more of the time its going to be a physics formula. 


and if its graphics related, odds are the formula will come from analytic geometry, or linear algebra in the case of 3D.   


so when it comes to formulas for games, physics, analytic geometry, and linear algebra are going to be your big three go to disciplines for turn key formulas.

#5313240 peekmessage while vs if (main/game loop)

Posted by on 29 September 2016 - 07:54 AM

and during learning d3d11, I've found this other way:




Just in case vstrakh's answer isn't clear, first one is right, second one is wrong (it will process only one event per frame).


so, what does that tell you about the quality of the example dx11 code you're learning from?   its obviously not  real world code, nor has it ever been tested, otherwise they would have caught the fact that it doesn't even fricking work.   i'm not saying all the code is BS, but keep your eyes peeled.   example code tends to usually be about 90% correct, with the other 10% being whacked stuff like you found in that dx11 code.


caveat emptor, and you get what you pay for.


EDIT: its actually worse, because they didn't catch the error by inspection - which is entirely possible - and should have occurred before any testing, heck it should have been caught by inspection before they even compiled.  does the tutorial you're using come with sample code? or just snippets?  does the sample code compile at max warning level with no warning or errors? IE will it even compile, or is it just some person posting some "almost code" pseudocode on a website?


i've run into these issues even with supposedly high quality tutorials such as rastertek.

#5313046 the dreaded "escort" quest

Posted by on 28 September 2016 - 09:47 AM

As long as another spear at your back feels helpful, that sounds awesome


if you're an army of one, you just doubled the size of your army! 

#5313038 CAVEMAN: pet interactions

Posted by on 28 September 2016 - 09:26 AM

well, pets reduce the chance of being surprised by encounters, and they are another NPC follower you can give combat orders to. but it sounds like other than that, pet interactions would be mostly just for immersion sake. however, some make sense, like pet or play with dog to improve band member mood, etc. but using relations to get the pet, then forgetting about them seems like a half-implementation though. same idea with recruiting followers and band members.  band members are under direct player control, like The SIMs, but followers should get their share of the hunt / treasure if you want them to stick around. 

#5313022 I am alone

Posted by on 28 September 2016 - 08:29 AM

Same with players and game devs


there's some empirical evidence that based on personality tests, the personality type one would expect to make the best designer is not the type that does tend to make the best designer.


the things you find online! <g>.


not sure where i ran across that tidbit of info.

#5312997 I am alone

Posted by on 28 September 2016 - 04:22 AM

All the gaming experience, all the art skills, all the game making practice I have is worth a lot.


are you experienced in creating 2d textures with alpha transparency? 


can you model a skinned mesh, with multiple outfits, and full animations? 


THESE are the art skills required in (3D) games.


playing games is just R&D - but is very important.  you can't design a good game if you don't know the difference between a good game and bad one.


making tabletop games can give you experience with design issues like game balance.


but neither making tabletop games nor playing video games will teach you jack about coding, making 2d and 3d graphics, or making music and sfx.


the coder seems to be the critical member of a team.  with code, you can build something. it may not have a nice paint job, with no artist on the team, and the audio may just be PD stuff, with no musician or foley artist on the team, but you can still at least build SOMETHING.  with no coder, you're limited to what can be done without code with existing engines. its quite common for artists or designers (or other non-coders) to want to make a game but not be able to due to lack of coding skills. if you can't get a coder, you'll have to learn to do it yourself, or limit yourself to what can be done without code using some engine or another.


also remember that not everyone is cut out to be a coder. same way not everyone is a born artist or musician.  in fact, art and coding talents seem to be rather mutually exclusive. there are top notch artists, and top notch coders, but there are almost no people who are top notch at both.  


you and i are actually in similar circumstances. i have a real talent for coding and music, but only a slight gift for artwork.  so much of my time is spent on honing my artwork skills, as i can do the rest in my sleep.


yes building games sounds cool. but its a lot of work. once you get into it you may not enjoy it.  its not everyone's cup of tea.

#5312992 I am alone

Posted by on 28 September 2016 - 03:52 AM

there are also engines that the developer doesn't need to code


all engines need code and have code.  some provide visual tools and/or other means by which you don't have to WRITE code, or at least as much of it.


with absolutely no additional coding of any type, all you're doing is replacing assets. IE you're not really making a game, you're just changing the graphics and sfx and music used by an existing game.

#5312891 the dreaded "escort" quest

Posted by on 27 September 2016 - 12:45 PM

Here's a twist for your mission.


ooh - that's another good one! 


there are SO many twists you can do though...


including all possible twists, the number of quest types becomes enormous!


types of quests * (number of possible twists per quest type +1)


the plus 1 is for the non-twisted version of the quest.


just one twist in each quest type and my 55 quest gens becomes 110 quest gens.


the cool thing about twisted and non-twisted versions is you never know which one you're on, until the telling moment.

#5312881 I am alone

Posted by on 27 September 2016 - 12:00 PM

I can't program but I can draw anything I see perfectly. I can write down all the game ideas. these are 2 major parts to game making, right?




the basic components are:


code, 2d bitmaps / textures, and music and sfx files.


for 3d add: meshes, skinned meshes, and / or rigid body models.


a game with no graphics would be a "text based graphics" game. a game with no audio is just a game with no audio. but you can't do any type of game with no code.


if you can't code yourself, you'll need to use an engine of some sort, or hire a coder, or learn to code, or find a volunteer coder (good luck!).


even if you use an engine, most require some sort of scripting at least.


your best bet is a game engine that supports visual programming (sometimes referred to as drag-and-drop programming), such as blueprints in the newer versions of the unreal engine.  they tend to provide the ability to do at least basic "coding" by simply visually linking components together. but its not uncommon to have to resort to scripting / coding to get all the desired behaviors for a given game.

#5312830 target selection strategies

Posted by on 27 September 2016 - 07:52 AM

Incidentally this is probably the most significant problem that I have with utility systems - designers often have a mental model of the ranking or precedence that they want the actions to have, but trying to force the mathematics to produce that result consistently can be very difficult


so i guess the best was to program a utility system would be to write the scoring code for each move with no real consideration for other possible moves, and just let the scores decide what is best. with proper scoring functions it should always make the best move. but i take it that determining proper scoring functions can sometimes be difficult?

#5312756 the dreaded "escort" quest

Posted by on 26 September 2016 - 07:31 PM

My Answer [snip...]


an NPC provides another spear at your back, and they may have a specialty such as trader, gambler, healer, etc. but that's about it unless i add custom code.


unless they are on a grand scale and difficult, escorts "things" will be mere tasks/jobs, not "epic quests".

#5312670 Biome based map generation?

Posted by on 26 September 2016 - 09:26 AM

do you need a function that returns biome type based on x,y tile coords? or can you use a 2d array map?   will a 2d array be too big?


if you can use a 2d array (or sparse matrix):


first, you'll need an algo that creates a "splat" with a nice random shape that you like.  it should be able to take a set of x,y coords as the "center" to control genral location, and also a radius value to control general size.


armed with that, you can then define number appearing for each biome type, or perhaps a range [min..max] for number appearing. this controls how many you get on the map.


you can also define a range for biome radius, to control their size by biome type.


then for each biome type you do a loop:   

for a=0 to max_biomes_of_this_type     splat_biome(biome_type)


when you do the splat, you generate the center coords at random. you can also apply rules as to where they can be based on biome type. caveman divides the world into cold north and warm south, and wet east and dry west, giving 4 areas that determine possible types of vegetation (IE no jungles in the cold north).


you can also apply rules about minimum distance between boimes. when you generate a set of coords, check for existing biomes too nearby. if you find one, just roll the dice again until you find a clear area.


so your rules determine where they can appear, number appearing determines how common they are, radius determines their size, and checks for existing biomes nearby keeps them spread out from each other.


the hardest part is the algo for the cool splat pattern.


you might try something like a cross splatted numerous times in a general area, then fill in the holes.


Caveman uses a location and radius to create a "circular" splat.  a series of splats along a random path can create a splat chain - like a chain of mountains. it starts with ocean, and splats impassable mountain chains. it then "grows" (limited floodfill) mountains around the impassable mountains, and hills around the mountains, and flat land around the hills. so it literally raises the land out of the ocean. running water starts at a random location, and flows in a random non-uphill direction until it hits another body of water (usually the sea or salt marsh). vegetation is based on area (cold north etc) and also uses a splat + grow algo as i recall. i'll bet something like those are what you're looking for. its been along time since i wrote the code, but as i recall that's how it works. i can look it up if you need me to. the result of all this is a 2d array with elevation, vegetation, eater, and resources info. that "world map" is then used to generate terrain chunks and collision maps - the game is a randomly generated open world seamless FPSRPG.