🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

How do YOU go about polishing your game?

Started by
7 comments, last by Eck 8 years, 6 months ago
So I am getting close to a point in my game where I am going to have to start going over the very numerous rough edges of the game code and mechanics along with adding some juice to the game here and there. I was just wondering what/how you guys go about polishing your game and what process you use to find and organize your tasks so it can be done efficiently.
Advertisement

play the heck out of the game, with pen and paper at hand. write down everything you think of. what needs fixing, what could be improved, new features, etc.

you'll end up with a list of three types of things:

1. missing things: key features which simply aren't there. not implemented yet, or you just forgot about them.

2. stuff to fix: its implemented, but not working correctly.

3. new stuff. new ideas and features you thought of. some may be worthy of consideration before release.

then go through and fix all the broken and missing things.

then implement any new features which are "must have".

then play the heck out of the game AGAIN, with pen and paper at hand...

repeat until nothing is missing, nothing needs fixing, and all "must have" new features that made the cut are in there.

then you're ready to go gold with your v1.0 release.

expect to release a v1.1 upgrade in about 2-4 weeks unless you're REALLY lucky. my best record ever was just 1 bug in an initial release, in Caveman v1.0, the "check fire" action. i forgot to turn off a debug message that told you how many "fuel points" your fire had left. it appeared after the normal message describing hold long your fire ought to last.

and don't get overly obsessive compulsive about things. perfection takes forever - and you do want to ship, don't you? <g>.

just make sure its solid, and production values across the board are of even quality - as high as possible overall, but even - so better stuff doesn't make worse stuff look even worse.

you'll know you're getting there when it starts to look like a "real game". wink.png

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

Get a group of folks and generate a list of issues that are apparent. "This character model looks out of place with the others" or "this interaction is frustrating" or "the framerate gets choppy in this part of level 3" or so on. Note in particular this shouldn't be feature development, since if you're still developing features you're still in early/main development and not in the pre-release polish phase.

Then stack-rank (order) the issues based on how important you think those items are to the success of your game.

Start fixing the issues in that order. This is akin to how one optimizes; you only optimize code that has the most impact on the game. Likewise, you only polish items that have the most impact on the game. You could easily "polish" a game for 15 years and never finish; no game is ever perfect.

Repeat the the first two steps (identification of issues and ranking) every so often.

Continue this process until you're out of time or budget and release. If the game has a continual income stream and potentially long lifespan, continue repeating the process after release (along with new feature and content development) to keep players interested and coming back for more.

Sean Middleditch – Game Systems Engineer – Join my team!

Then stack-rank (order) the issues based on how important you think those items are to the success of your game.


a good point. always do the most important things first.

i probably spend 1/3 of my time adding and removing changes from the todo list, one third of my time implementing changes, and the remaining third sorting the priority of changes to be made - not literally of course, but you get the idea.

i find the categories of: missing, fix (or bug), new, and check (inspect code, make sure it does what its should), usually then broken down by graphics, audio, AI, etc, is a good way to sort the chaff from the wheat before prioritizing the most important categories.

an example (this is for a title which is nearing completion. note that time estimates are included with some of the items):

seems the editor will only do double spaced lines of text, turning the the following into a wall of text. sorry about that.

hi level stuff to do in the game:
boils down to quests and boss monsters.
* gatherings - prereq: must have a band - like alliances - must have shelter to do gatherings.
* great feat quests - accomplish a great feat that makes you famous.
* high level stuff: gatherings 1 DAY
* high lvl quest gen 3 DAYS ONCE QUESTGEN IS DONE
* boss monsters, etc. 1 DAY
* storyline campaigns - hard coded campaigns of quests

HIGH LEVEL QUESTS/CAMPAIGNS:
* high level quest gen - questgen that makes highlevel quests
* high level quests/campaigns - quests with big monsters and treasure
* great hunt quests - just another type of quest. requires adding a few more objects to the game, such as elasmo horn, and the ability to get the horn by getting trinkets.
* advanced training quests - a type of high level quest
* ad-on bonus quests tied to completion of storyline campaigns, tied in with advanced training quests. when you talk to barius at cloudruler temple, he teaches you some skills. a type of high level quest

GATHERINGS:
* multi-band gatherings. Althang. occurs whenever two (or more) bands meet ?
or a pre-arranged meeting of two or more bands?
a pre-arranged meeting of 2 or more bands.
so one can issue invitations to other bands, and one can receive invitations from other bands.
at the appinted time and place, the NPCs appear. one can then engage in any action supported by the game engine (talk, trade, teach, learn, mate, make alliances, play games, non lethal combat, etc).

MINIGAMES:
* arena combat for famous warriors. famous warior cavemen might travel the world seeking other champions as opponents. maybe 2 bands worth of people gather for the event. but whats in it for the warriors besides bragging rights? don king and the caveman UFC?
* mini games: rock toss, sticks and hoops, chunkey, court ball(?), target practice with missile wpns.
* non-lethal combat contests.

HIGH LEVEL ADDITIONS TO GAME ENGINE:
* "boss" versions of animals and cavemen, for random encounters, CRH encounters, and quest encounters.

* add bleedout, limb crippling, etc to combat

** done! travois:
make
select
travois menu
get stuff
store stuff
inspect
repair
abandon
pickup - including must be able to carry half its loaded weight
drop
cant attack while carrying
walk speed max when carrying
wears out over time
travois list
load and save travois list
moves and turns with player when being carried
draw travois - placeholder only

* travois:
travois object:
make, repair, abandon, load, unload, pickup, and drop actions.
travois is mobile world object which is a container. so it has a stufflist.
player must be able to lift half the weight of the gear loaded on the travois to pickup the travois.
play can only move at walk speed when carrying travois.
player must drop travois to attack or do actions. probably make them drop it automatically if they attack or do an action.
need a list of travois'.
making a travois activates a travois stuff list.

teepee object:
like a hut, but you can demolish like a lean-to and get your parts back. requires less parts (wood) than hut.

* possible new feature - but also possibly unethical - subliminal programming. use subliminal visual and/or auditory stimuli to evoke some desired emotional state or subconcious belief on the part of the human player. possibly subject to abuse. but then again, any piece of software could include subliminal programming. heck, viz studio might have some in it right now saying "we are the Microsoft - resistance is futile".

* add ability for player to join a NPC band
* achievements
* make sure there are random encounters in caverns. - i think there are already.

design questions:
* combat music tells the player that badguys are nearby. when to switch to/from combat music.

* player defined goals: kill animal type, get item type, get x amnt of exp in skill y, etc. gives mood boost when achieve goal. should it give anything else? you automatically get exp for doing stuff anyway.

* score, survival score, as in top score. penalty for starting w/ stuff. penalty or bonus based on diff lvl. score points for accomplishing things. maybe current score would be the (sum of all your stats + the value of all your posessions) * diff lvl, or something like that.
1/2 DAY
score is a function of: exp, posessions, variable stats, crh's, storepits

should diff and starting affect score, or should score simply be in the context of some starting scenario and diff level?

* bow drawn in hand facing wrong way for attack animation!
* male mesh skin weights off - ribs under arms attached to upper arm bone.
* guy cloak is tight around waiste and butt
* girl cloak still has arms.
* better female heads

* need a block ani
* make action animations:
block.ani
drink.ani
/ 140 = make
make.ani
sleep.ani
rest.ani
bathe.ani
eat.ani
cook.ani
gather.ani
addwood.ani
playfire.ani
inspect.ani
/ 150 = crawl
crawl.ani
forrage.ani
fillwaterskin.ani
stargaze.ani
swim.ani
dance.ani
playdrum.ani
playflute.ani
talk.ani
capture.ani
/ sail = 160
sail.ani
paddle.ani
pray.ani
applycamo.ani
putoutfire.ani
checkweather.ani

* new disaster: dust storms.

gameplay issues:
* critters get stuck in trees. not going into collision recovery? cornered between trees and other critters? player went up a tree. critter got stuck in tree?

UI improvements:
* messages: show bm name where appropriate. there are about 600 calls to msg() in the game!
* add notes - player can keep notes on the game, stuff they want to write down to remember. stuf they want to do, stuff they want to make, etc. - might be combined with the player defined goals idea.

new AI stuff:
* follower AI vs dense terrain. A* ?
* make defend location AI work with avians 1 DAY
* orders: follow: doesnt leave (or enter?) cave! (or cavern?) or raft?
* improve TAMED (wolf) AI, make them graze etc
* new orders: follow-in-line.

new gameplay:
* survival scenarios: end of the clovis, and other partial / near total extinctions of mankind, there have been 2 or 3 in the past.
* discovery scenarios: be the first to populate some region of the globe.
- europe 45KBC?
- mideast 250Kbc?
- asia 100Kbc?
- australia ~50Kbc
etc.


* some animals should be able to attack forward or backward (kick).
* caveman encounter - asks to travel with you. - volunteers to be companion.
* companion encounter event - asks / volunteers to join band. over time, or as relations grow, or both, etc.
* arena mode: like quick combat, but with animals too.
* gun camera for combat.
* lose "you encounter some animals" messages. encouter range based only on terrain. let surprise happen as it may. needs thought. what if they're not the active bm and they get an encounter? don't tell them until they're attacked? if they're hostile, the speed will drop to 128x max.
* adjustable diff level for party strength (affects number appearing)
* objrec2: add field for % complete. when you do a make action, you create the object in player inventory or the list of world objects, and remove parts., and set % complete to zero. as they work on the object, you increase % complete. when % complete reaches 100%, check for success. if successful, they're done, else remove from inventory or list of world objects if they fail to make. when they do a make on an inventory item, check first for one under construction. if found, continue work on that one, else normal procedure for starting new one. if they make a world obj, make it so they can click on it to resume construction. one problem: eveywhere you check for an item, youll have to somehow exclude those still under construction. dont see any way to do that without adding a check to everything that checks for existance of item.
* new quest type: you hear about a great cavern full of animals to hunt! do you want to go find it? location marked on map. goto location quest. might make it a fuzzy location - map sq only or something. easy! 1/4 day - just set quest target to nearest cavern! : )
* add ability to trap animals alive (capture) + domestication of trapped animals. 1 DAY
* minigames 3 DAYS
* mutiple starting scenarios for new game:
1. you're just "of age". your band is attacked and destroyed. you escape, but with no shelter to go back to, no gear, and no xp yet. the default new game.
2. you leave the band to seek your fame and fortune. player gets some basic gear, and starts at a shelter with friendlies. 1 DAY
* model storms at sea. make watergod cause storms at sea - capsize your raft - or give you calm seas. make it draw waves, make raft move on waves. make wave intensity a function of weather engine. give watergod ability to change Dpressure to cause storms. model capsize, and seasickness. 1 DAY
* bandmembers should have "talents" that make them gain exp fatser & / or start w/ more exp in specific skills. sort of like a "class" in D&D. possible talents: handwpn, mislwpn, arts, crafts, etc. 1 DAY
* add hit location and critical hit.
* take rafts up rivers and streams. - basically collision checks
BOATS: model river and stream currents. how to determine direction of water flow? requires game engine track this. 3 DAYS
* add storage pits, fires, dropped objects, and bedding to CRHs 1/2 DAY
* new disaster: supervolcano eruption. global cooling. destroys ozone. more UV.
* wildfires that burn across the map -cut n paste from old version
* choose species: africanus (lucy), ergastor, erectus, habilis (handyman), australeopithicus robustus (giant vegetarian, races of giants from lore/bible? became bigfoot/yeti/etc?), neandertal, florensis (dwarves in pacific), or sapien (us).
* choose technology limit: paleolithic (no metal, argriculture, domesticated farm animals, towns, government, etc), or neolithic (towns, metal, agriculture, non-nomadic lifestyle, stonehenge, cloth, etc)
* make all animals and cavemen active all the time, going about their lives.
* limit god relations to +100 ? (and -100 too maybe?)
* perm shelters: handle building and drawing different types (wood, stone, etc).
* model body core temp
* model stress
* store location of caverns and any other such terain features in a database, like the CRH database. that way they're not always in the same place in each map sq, and you can have more than one in a map sq.
* new feature: moodlets. like in the sims3. mood mofier with amount and duration, example: minus 50 mood for 1 week on death of bandmember. 2 DAYS
* bow, model breathing, recuded accy for longer hold, rduced accy for movement. add sway, reduce chance to hit, etc. also check out holding multipple arrown in the draw hand. 1 DAY
* add dead bm object to game - so they can strip them after recruiting the next new BM ? so they body doent just diappear when they recruit a new bm? so the body doent just lay around until they recruit a new BM?

new actions:
------------------------------------------------------------------------
* is paint cave paintings turned on and working? are there a couple dozen different cave paintings in the tex db? it draws them. cant select a cave interior wall. no action to make them. only one painting in the textures db.
* use lodestone action
* add chat w/ bm and chat w/ npc actions, slowly raises mood and social.
* drink rain / snow w/o raincatch (really slow)
* select pet. pet menu. feed, pet, play with, rename, change texture, kill, teach trick (fetch, play dead, sneak, point, got get em!, etc), make do trick, etc. make relations go down when dont feed pet
* NEW ACTIONS: WATCH SUNRISE, AND WATCH SUNSET, AS WATCH CCLOUDS, HAS TO BE AT RIGHT TIME OF DAY, ONLY LASTS 1 HOUR, BIG MOOD BOOST.
* new action: watch snow, like watch clouds.
***** eat snow for water
* catch snow w/ raincatch
* melt snow for cooking
* shoreline: fish actions
* shoreline : swim in ocean action
* bury dead caveman - boosts mood and relations of friends and family of the deceased in attendance. how to implement ? carry body action? prep body action? dig grave action? add ability to pickup a carcass?
dead caveman...
search
pickup
bury
pickup: if have containers for all stuff carried (hands are free), can pickup body. adds body to inventory. with the usual encumberance effects. can't attack while carrying body. can drop like any other object.
bury: requires digging stick. triggers bury caveman action.
bury caveman action: takes time. once time passes, allow to drop grave goods (?), remove body from simulation. add grave world object(?).
1 DAY
* new action - play in water - mood boost
1/4 DAY


new critters
--------------------------------------------------------------------------------------
* modern animals (lions, tigers, bears, etc)
1 WEEK
* water animals (croc, seamonster, etc. sea animals, sea monsters! )
1 WEEK OR LESS?
* new critter: a domesticatiable cat.
1/4 DAY
* Peccary - new world pig . new animal.
1/4 DAY
* bring on the dinos!
1-3 WEEKS FOR CODE, RESEARCH, AND CONTENT.
* gt constrictor snake
* new animal: american lion?

new objects
--------------------------------------------------------------------------------
* need small firestick object
* need handful of tar object
* need handful of reeds object
* add to game: S_MEATVEGGIESTEW
* bird nests w/ new food: eggs.
1/2 DAY
* new object: sundial compass stick. stick it in the ground pointing at the sun, and wait 15 minutes. the shadow points roughly east.
1/4 DAY
* new type of trap: pit trap. dig a big hole, wait for a mastodon or smilodon to come by.
1/4 DAY
* animals dens w/ bones, carcasses, cubs, eggs, the odd piece of equipment or trinket.
1/2 DAY
* add boomerang weapon
1/2 DAY
* fish traps
1/2 DAY
* maps as treasure on dead hostiles. adds info to player's world map.
1/4 DAY
MORE OBJECTS:
* new armor: boiled leather armor
* armor mittens
* armor boots
* armor bracers
* stone helm, shield, and leggins.
* new object: travois. requires wood, cordage, hide. makes a stretcher like platform the player can load with gear and drag behind them.
* new wpn: numchok weapon: 2 sticks connected by leather strap
* wood harp
* poison dart xbow

new skills
-------------------------------------------------------------------------------
* paint skill: dying baskets, clothing, hides, etc. dying increases value of item
1 DAY + ADD PAINTED OBJECTS

new interests
------------------------------------
* new interest: learning

new other performance stuff:
--------------------------------------------
* write exit code file on exit with exit code / message

minor gameplay issues:
--------------------------------------------
* game runs slow in accel time when lots of bms moving x country at once.
* power out during save wipes local maps
* make background chunk gen work across map squares
* make background chunk gen run faster. more passes. do less each pass.

audio issues:
--------------------------------------------
* dont do combat music near predators w/ less hp than humans. need new version of badguys_nearby.

new Audio:
--------------------------------------------
* more bass for rockalnd ani sfx
* massage all sfx files
* sfx for learning attack skills

graphics issues:
--------------------------------------------
- minor -
* dont draw snow on the ocean!
* dont draw snow on ground inside hut - add mesh w/ straw on floor to hut model
* action view doesnt draw snow? it SHOULD work... code looks ok.
* dead npc ani's wrong? - running out of aniplayers?
* dont draw rain inside perm shelters and huts. need "draw rain outside hut" code.

new/improved UI stuff:
--------------------------------------------
* world and local maps: multilpe user defined markers with notes.
- minor -
* generic scrollable menu
* load game - sort newest to oldest and show date and time stamp
* tab and shift-tab to cycle thru BMs
* enter and shift-enter to cycle thru idle BMs
* hotkey to pull up menu of bm's to switch to perhaps ~ (tidla) ?
* option to disable windows key - need to get online
* dont show god relations at all to the player. it should be inferred from speed at which stuff is found, & quality thereof ?

new graphics:
--------------------------------------------
* better rain and snow effects.
* cut size of lg game bird model by 50%
* need make clay pot ani
* need a makerope / cordage ani
* need find/gather from ground ani for stuff like find shell.
* need a paint ani?
* need a paint hide ani
* need a "carving" ani for flutes, statues, and stuff
* need "use grinding stone" ani for use with make pigments action and other grinding stone actions.
* video controls: show dropped object names: on/off
*** better caveman grphics - skinned meshes?
* make drawmissile use object.dinfo
* butchered texture for animals
* draw critters & cavemen swimming when in deep water. draw at swimming height. maybe use swim ani too.
* terrain chunks only sort (and draw?) on texture, not mesh! same for render queue?
* background chunk generation. call background gen chunk routine. it has an int that says what state its in: not running, or generating some part of a chunk. if not running, it figures out the next chnuk to gen, and starts generating it, increments its state, then returns. if its generating a chunk, it gens the next part, increments its state, and returns. if its the last part, it copies the chunk to the cache, and sets its state to not running. which chunk to gen: for each alive bm, chek the BMs chunk and the 8 surrounding chunks, if one is not in the cache, thats the one to gen next. or you step it out to a radius of 2 or 3 chunks around a BM.
* make grass, trees, plants, etc sway in the wind.
* "6" "o" and "0" look a lot alike in the caveman font
* need male version of drink ani
* talk, joke, teach, etc. make them turn towards the player and listen.
* find vines - needs handful of vines object graphics.
* make it draw objects in hand and on ground duirng action animations - need fixup for each obj! need better/different reed graphics!
* savanna: grass tex too dark
* drink water from waterskin ani
* add bitch anis: its wet!, its cold!, its hot!, i'm lonenly! i'm thirsty!, etc. band members complain to the human player when not happy for some reason. <g>.
* change "building PC games..." to 1989
* assign learn anis to all skills. make get_action_sfx use learn anis.
* animated alpha blended fire flames
* disaster animations
* make it draw missiles in NPC & 3pv BM attack anis
* camelops run ani needs help
* lightning graphics and thunder sfx
* rocks and trees vs cliffs (drawn half way up - dont look so good)
* make walk / run anis match player speed
* make volcanoes smoke
* view model - draw gear on them
* brightness: go by 10ths from 0 to 1, then by 1 to 10, then by 2s, 5s, or 10s to 50. must change brightness to float. changes save file format.
* draw snow on plants as well as ground
* atmospherics. day-night sky background graphics. atmosspherics. per pixel algo -too expensive? lightness1024 gets 2fps with his system. rayleigh in -scattering would be nice! need a texture mapped skybox to blend it into.
- red sky at night
- red dawn
* terrain specific graphics for stuff like dens, traps, storepits, rocks in desert?, etc.
* draw sun better. - add some flare?
* dreads for NPC girls - need dread hair textures in different colors!
* more skintones for asian, polynesian, mideastern, etc
* animations for all actions
* animation for dance action: a caveman cover of "the locmotion" as done by grand funk railroad, written by carol king.
* make it so they swim in deep water (streams, rivers, lakes).
* improve pteranodon model.
* alpha blended flames
* draw shield in 1pv atk anis
* draw spiced meat stew draws beacon
* not all food types are drawn as dropped objects!
* add ampersand to caveman font
* improve hippidion run ani
* animated flames for fires
* better spring graphics
* flare for sun
* animations for natural disasters
* cleanup ends of limbs in male and female models
* make vegetation sway in breeze

new modeler features:
------------------------------------
* models, MODELER and drawmodel:
add support for unique materialID for each limb
* add support for multiple screen resoultions

new tools / add ons:
----------------------------------------------------------------------------------------
* GAME EDITOR: change player sex and/or 3D model used.
* help system: caveman-o-pedia. 1 WEEK
add view_objects_DB, view_actions_DB, view_animals_DB, view_skill_descriptions, etc 1 WEEK
* built in todo list -- requires line editor? 1 DAY
* player's story log / photo album 2 DAYS
* Let players customize the world. Their flags, building styles, etc. 2 DAYS
* cleanup tools and cheats for release
* add tool to make loADING SCREENS USING CAVEMAN FONT
* radar for playtesting
* add variable framerate limiter to playtest menu.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

Prioritize by biggest changes first. THEY can cause changes to many other things and you dont want to spend time cleaningup/improving smaller things that will be thrown away or adjusted again (and have to beredone again later).

As you actually start polishing things, when you have other people test your game ask them WHY the problem is 'wrong' -- because they may see it differently than you do as the creator/builder (the old engineers trap of always looking at something as an engineer sees it instead of the final user)

--------------------------------------------[size="1"]Ratings are Opinion, not Fact

Before polish, make some tests to see if the game is fun. If not, you need to redesign (the worst thing you can do is to polish a broken game).

Once that's done and you and others think it's fun you go to polish. Which is basicly digging through a big list of feedback you got from players :) I also tend to change things based on my own feel (players can make you notice the problem, but they rarely provide good solutions).

The biggest challenge at that point is to resist adding new features :D

Stellar Monarch (4X, turn based, released): GDN forum topic - Twitter - Facebook - YouTube

Before polish, make some tests to see if the game is fun. If not, you need to redesign (the worst thing you can do is to polish a broken game).

Important point that gets forgotten way too often. Make sure what you polish is worth polishing.

As everyone said play your game again and remove anything that you feel is useless or bad for the game. let your friends test your game, then take note in whatever they say. observe them as they play, you'll notice from their expressions, which parts of the game they enjoyed and which parts you'll need to reconsider.

I was going to write a more detailed response, but it would be almost exactly like Norman Barrows's post. :)

Paper, notecards, and pencils is the way I work through it. After a few playthroughs you'll usually have a good sized list of items. Prioritize them in some way that makes sense. And work though them one at a time. As you're fixing individual line items and testing them, you'll run into more. Write EVERYTHING down. At first it might be disheartening because early on, when you fix an issue, you'll discover 3 more things that need to be added. This is more than a little disheartening... But stay the course! Eventually you'll stop finding rough edges and your list will get whittled down.

EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG

This topic is closed to new replies.

Advertisement