• Advertisement
Sign in to follow this  

Unity What do Coders need to know?

This topic is 1773 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Good evening, I am designing a game, and soon I will need to begin seeking out a coder or programmer (maybe several) to bring it to life. 

I am very new to all of this, so what I am asking is- what would a programmer need to know in order to give a reasonable estimate of time and money they would charge to complete it (U.S dollars). Please allow me to give an outline, and let me know what more information is required. 

Most of the headers contain links to my website, which have mock-ups of the game screens, for a better idea of the game format. 

 

---------------------------------------------------------------------------------------------

 

 

Pack for Coders


Necromancer, The Fight For Life is a 2D RPG to be programmed in C++, C#, Unity or whatever

software is most appropriate, using sprites for animation and simple graphics. The game can be played

with mouse and keyboard and compatible with Microsoft Windows. In terms of mechanics and complexity

it is almost identical to Gameboy Pokemon games, the main feature of which is monster capturing and battling. 


Screens-

Title Screen

Fade in and out company logo, fade in title screen with 4 options.


New- Starts a slideshow of 5 still slides with music and
voiceover, then the game begins.

Load- Restores a previously saved game state.

Options- Change music volume, sfx volume.

Website- Opens a separate window that shows the company website.  


World Map

Character sprite can move up, down, left and right on a
tiled surface (using basic walking sprite animation). When the sprite
encounters a tile with a town on it, the game screen changes to a town, there
is also a “random chance” while moving of entering a battle with NPCs. On the
World Map screen at any time the player can enter the options screen with a
button press.


Towns

Character sprite can move up, down, left and right. When
standing next to an NPC sprite, a button press can initiate text on the screen
(the NPC speaking), occasionally there will be dialogue options (the equivalent
of Yes and No options) that will affect future dialogue options, story elements,
and also affect the game conclusion. There is a point in each town where the
player can Save the game state and also heal all of their minions to full
health points.


There will be approximately 50 towns, all using the same
structure, just different art. Through dialogue options the player can accept
and complete quests, progressing the story and unlocking new areas on the World
Map.


Battles

The battle screen will have 1 – 3 minion sprites controlled
by the player, and 1 – 3 sprites controlled by AI. The player can choose to Run
(having 50% chance of returning to the World Map), Info (which will cause
anything the Pointer is on to display explanatory text) and Action, which will
cause battle actions.


The battles are turn based (order determined by the minion’s
Speed value), each minion has the option of 4 attacks with the option of 3
targets (some high level attacks will affect all targets, and some attacks can
target allies). When an attack and a target is selected, a battle animation
will play (normally comprised of 4 sprites) and the next minion will be able to
act.


Some attacks cause a minion to lose health points, some
cause a minion to increase or decrease in stats (referred to as buffs and
debuffs, see below for stat details). When a minion reaches zero health points,
it can no longer act in battle. When all the minions on one side have zero
health points the battle is over, if the player lost, they are transported to
the last town they visited, if the player was victorious they are returned to
their location on the World Map.  


NPC minions in battle can be controlled by simple AI or
simple random number generators (with 4 attacks to choose from, and 3 targets
to choose from, there is a total of 12 possible actions, so maybe random battle
actions would be just as effective, I have yet to learn enough about this).

 


Minion health points can be recovered by the act of walking
on the World Map. Something like 5 health points per step, or totally recovered
by resting in a town (talking to a certain NPC sprite like an innkeeper).


Minion Management

The minion management screen displays a simple list of all the minions
which the player has captured and currently owns. Each minion can be individually selected and the
player can use the following options.


Info- Displays a new screen with detailed minion stats.

Switch- a second minion must be selected, and then those two
minions switch spots in the list. The first three minions in the list are the
ones which will be used in battle.

Fuse- a second minion must be selected, and then both
minions are deleted and a new minion is created. Only specific combinations of
minions can be successfully fused, if non-compatible minions are selected then
a simple “not compatible” message is displayed.

Remove- Minion is permanently deleted from the list.


There are 150 different minions, and the player can own
multiple copies of the same minion.

Minions have 10 Stats (of numerical value from 0 – 1000)


Health Points- are the amount of points a minion can lose before being defeated.
Strength- determines physical damage output.
Constitution- lessens the amount of physical damage taken.
Dexterity- increases the chance an attack will connect with its target.
Finesse- increases the chance an incoming attack will miss.
Speed- determines how soon the minion can act in battle.
Willpower- determines magical damage output.
Resistance- lessens the amount of magical damage taken.
Luck- increases the potency of actions which effect the stats of minions (buffs and debuffs).
Fate- decreases the potency of incoming actions which effect the stats of minions.

After each successful battle, minions will gain experience
points. As experience points increase, minions' values increase, making them
more powerful in battles. After certain amounts of experience points, minions
gain new attacks and can eventually evolve into new more powerful forms.
There are 240 different attacks, each using a different calculation of stats,
for example-


Slice = Attacker’s Strength minus Target’s Constitution

Lightning = Attacker’s Willpower minus Target’s Resistance


With some involving more complicated calculations (nothing
more than basic algebra) such as...


Vines = Attacker’s Willpower plus Attacker’s Speed divided
by 2 minus Target’s Resistance with a chance to reduce the Target’s Speed by an
amount determined by a different calculation e.t.c...

 

I have not yet settled on the exact method of acquiring new minions, 

I expect it will be similar to Pokemon games (reduce target to a low

health, then attempt to capture). 

 


Pocket Necronomicon

A simple screen containing a virtual book, pages can be
turned and pages will show text information about minions (added as new minions
are encountered) similarly with people and places. 

 

--------------------------------------------------------------------------------

 

Thank you for reading. 

Share this post


Link to post
Share on other sites
Advertisement

Given your project is a RPG, you have to consider your game fun factor and balance in combat and pacing of the game's action, adventure, movement, animation and story, system and code complexity. I would say it's hard to say but it's definitely going to be A LOT of time given what I mentioned earlier.

 

You won't really know how the game looks on screen despite how you know it already is on paper. Some design always change and when design changes time adds up.

 

The coder will mostly likely want to see your art given he/she needs to add the art to the game.

 

The game also need testing and fixing bugs, so the time will also adds up more

Edited by warnexus

Share this post


Link to post
Share on other sites
This is technically simple, but lots and lots of design iteration with a working prototype is necessary to make the game logic compelling and to balance the game. That's a job for the designer. Doing it by involving a programmer to manually make each change would require tight cooperation, not to mention a ton of programmer hours (expensive!). The sensible way to do this would be a data-driven one where all the data, and any logic that needs to be tuned, are exposed to the designer via scripting and/or data editor.

I'm inclined to ask: couldn't you do a prototype yourself in RPG Maker or similar easy-to-use software that already comes with editors, etc.? Then you'd be free to polish the game logic, accurately design and test the game world itself and do the balancing at your own pace. With a polished prototype where all or most of the game logic is in place, it is a much simpler task to buy the work of re-coding and porting the thing to other platforms. If you even need to.

Share this post


Link to post
Share on other sites
Hi WN, thank you for the advice on next steps, I understand a great deal of time will be needed for balancing, so I understand it must be hard to give a real estimate.

Hi SK, thank you for your in depth response, I will look into putting together a prototype as a means of getting a solid foundation for a programmer to work on.

Follow up question-
Once the coding for one town is figured out, is it a relatively 'simple' case of replicating that code with different art and different values to create many towns?

Share this post


Link to post
Share on other sites

Follow up question-
Once the coding for one town is figured out, is it a relatively 'simple' case of replicating that code with different art and different values to create many towns?


For a well-implemented system it is fairly easy.
For a badly-implemented system it can be as difficult -- or even more difficult -- than the original work.

Bidding simply on the minimum quality developers or the minimum bar to satisfy the requirements will often yield hard-coded, inflexible, badly implemented solutions that only meet the requirements by the barest technical margin, if at all.

That is just one of many reasons you cannot simply say "How much will it cost"? It can be done poorly but just barely up to spec, or it can be done with a rock-solid design and implementation that is easily extended. The two have very different cost structures.

Share this post


Link to post
Share on other sites
Thank you frob, my original question was not 'how much will this cost?' - my original question was 'what would a programmer need from me in order to give a time and cost estimate?'

I understand even narrowing the time down to a number of months can be difficult, as much if it depends on balancing and bug fixing, however I am preparing to put a lot of money behind this, so when it comes time to ask for cost estimates I will not be asking 'what is the minimum price I can pay for this work?' - it will be 'what would I have to pay in order for this to be done to a high quality and standard.'

Right now the focus is just to get my design, writing and artwork to an appropriate state so I can even begin talking to coders intelligently.

Share this post


Link to post
Share on other sites

A programmer who can tackle all that work solo [i]and do a good job[/i] is going to be expensive. A team will be even more so.

 

 

Consider that you have two basic pools of people to draw from: those who can do this well, and probably already [i]are[/i] doing this sort of work someplace; and people who can get a game out the door at significantly lower quality of work and possibly more net expense.

 

If you're content with hitting the second group, there's plenty of places you can pick up coders for minimal cost or even free. But getting a game produced - if you're serious about doing it and doing a good job - is going to be a lot more work than that.

 

 

For perspective, if an industry-quality programmer were to tackle this, they'd probably be asking for at least $70,000 USD a year, for probably a year or two of work, depending on how well your team gels and how efficient the programmer is. Anything less is pointless, since a qualified person could walk into an industry job instead the next day. If you want that caliber of people, you have to compete in the job space - and that means a lot more than just salary.

 

As soon as you start talking about putting money on the table, you have a lot of things to square away if you want to attract solid talent. You need a company structure to minimize personal liability. You need monetization plans, revenue projections, possibly guarantees of seed capital from some sort of investor. You need solid contracts and established working guidelines and clear leadership.


 
If you're not in a position to provide benefits like insurance coverage, retirement funding, profit sharing, etc. etc. then expect base salary to increase another 20-30% to compensate for that.
 
 
Here's another way to think of this. You're not proposing a contract gig where someone walks in, does a job as specified on paper, collects a paycheck, and walks out. If you want this done right, you need to have an iterative and relatively open-ended structure. What seems to work well as an abstract idea may turn out to be a flop once it's actually implemented; you need to build in padding to your schedule to anticipate that possibility. The less experienced you are as a game designer and creator, the more time you need to budget for getting a fun game out.
 
 
Of course, that's if you're really committed to producing something high quality and marketable. If you just want to make a game, you can find plenty of programmers who will happily hack on your project for cheap or free.

Share this post


Link to post
Share on other sites
Hello ApochPiQ, thank you for the insight, it is always useful to put myself in the shoes of someone I am considering employing, and trying to understand what would be fair compensation to them. $70k a year seems fair.

However, the purpose of this thread was - what more do I need to show to a programmer for them to be able to accurately assess the project themselves?

Share this post


Link to post
Share on other sites

what more do I need to show to a programmer for them to be able to accurately assess the project themselves?

 

Scope.  You've described a lot of the systems you want to have implemented, which is very helpful, and I can already get a feel for the kind of work this would require to get up and functional.  Iterative testing and debugging is always an elusive target time-wise, but it would be nice to know "how big" this is supposed to be.

 

Also, what's the support structure for development like?  How big will the team be, where are assets (art, music, etc) coming from?  Are those secured?  What quality?

 

What's the financial backing of the project?  If you're picking up coders for free, and they want to work for free, good luck.  If you're intending to pay the team, where's that coming from?  (Nothing personal like bank information, but more a sense of "yes, I really can pay you" instead of elusive hand-wavey "percentage of sales" tripe)

 

What's the delivery plan?  If this project gets wrapped up in 8 months or 2 years or however long we're about to invest in it, has anyone done any legwork in terms of sales/publishing research?  Even as simple as "submitting to Steam Greenlight and Desura" or "direct sales from website" might be good enough there, just another data point that's nice to have.  The more it looks like the whole system is being taken seriously, the more confidence you instill in your prospective coder(s) that their time and work investment will reach the finish line.

Share this post


Link to post
Share on other sites
Thank you BCullis, that us exactly what I was looking for, I'm trying to put together a prototype now and then I'll focus more on the business side if things to get that in a more professional state :)

Share this post


Link to post
Share on other sites

I'm going to recommend a book for you.  http://www.amazon.com/Business-Legal-Primer-Game-Development/dp/1584504927

 

I learned quite a bit from reading this book, and it also gives you some realistic expectations on the gaming biz.  It even has a few articles from veteran devs like Ralph Baer talking about things they wish they would have known ahead of time.  If you don't have the cash for lawyer off hand, this book can save you a bit of trouble (depending on how far you want to go).

 

Tbh, I don't remember the book being so pricey.  I got it for about $50 USD (IIRC).

 

Also, are you a programmer of any sort?

 

Shogun.

Share this post


Link to post
Share on other sites

Wow that book is crazy expensive, but yes I will need something like that soon, thank you. 

 

Shogun, I am not a programmer at all, I am teaching myself all the relevant game development skills as I go (my only pre-existing skill was writing). 

 

However so far in 4 months I have managed to teach myself enough art and design to create everything you can see on my website (just updated the Towns and Cities mock-up art to reflect the eventual tile structure). And I taught myself enough HTML to set up and code the website from scratch, no 'helper' software involved.

 

So my current internal debate is whether to teach myself enough about coding to create a prototype, or ask someone to do it for me. I would love to learn to do it myself, but I already have rather a lot on my plate around my silly full-time job and doing the writing/structure/artwork for the game. At the very least I would like to learn enough about programming so that I can be a good project manager and leader and communicate properly with programmers- hence the reason for my original post. 

Edited by Got_Rhythm

Share this post


Link to post
Share on other sites
In that case your next step is to build a game design document (GDD).

It describes the game in full detail. You should be able to hand the GDD to any reasonably intelligent stranger, ask them to read it, then ask them to act out or describe exactly how they would play a section of the game. It doesn't need every detail, but it should be detailed enough that a lay person could understand exactly how every system interacts and is presented to the user.

Share this post


Link to post
Share on other sites

So my current internal debate is whether to teach myself enough about coding to create a prototype, or ask someone to do it for me. I would love to learn to do it myself, but I already have rather a lot on my plate around my silly full-time job and doing the writing/structure/artwork for the game. At the very least I would like to learn enough about programming so that I can be a good project manager and leader and communicate properly with programmers- hence the reason for my original post.

Prototypes can be useful without modeling the whole game. For instance, to iterate on battle mechanics it might be sufficient to have a prototype that just models a single battle with one screen, fixed enemies, no AI, you play both the character and the enemy actions, etc.

Again, check out RPG Maker (or equivalent) and just start messing around in it. I haven't used it myself but reportedly it is very friendly to beginners.

Just a spreadsheet program can be enough for some things, like modeling the damage output of a character with given abilities/equipment and the probability of winning against a certain type of enemy. Edited by Stroppy Katamari

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
  • Advertisement
  • Advertisement
  • Similar Content

    • By Chamferbox
      Chamferbox, a mini game asset store has just opened with some nice game assets, 
      Here you can find a free greek statue asset 

      Also check their dragon, zombie dragon and scorpion monster out:



      They're running the Grand Opening Sale, it's 30% off for all items, but for gamedev member, you can use this coupon code:
      GRANDOPEN
      to get 50% off prices What are you waiting for, go to
      http://chamferbox.com
      and get those models now!

      View full story
    • By Dafu
      FES Retro Game Framework is now available on the Unity Asset Store for your kind consideration!
      FES was born when I set out to start a retro pixel game project. I was looking around for an engine to try next. I tried a number of things, from GameMaker, to Fantasy Consoles, to MonoGame and Godot and then ended up back at Unity. Unity is just unbeatable in it's cross-platform support, and ease of deployment, but it sure as heck gets in the way of proper retro pixel games!
      So I poured over the Unity pipeline and found the lowest levels I could tie into and bring up a new retro game engine inside of Unity, but with a completely different source-code-only, classic game-loop retro blitting and bleeping API. Months of polishing and tweaking later I ended up with FES.
      Some FES features:
      Pixel perfect rendering RGB and Indexed color mode, with palette swapping support Primitive shape rendering, lines, rectangles, ellipses, pixels Multi-layered tilemaps with TMX file support Offscreen rendering Text rendering, with text alignment, overflow settings, and custom pixel font support Clipping Sound and Music APIs Simplified Input handling Wide pixel support (think Atari 2600) Post processing and transition effects, such as scanlines, screen wipes, screen shake, fade, pixelate and more Deploy to all Unity supported platforms I've put in lots of hours into a very detail documentation, you can flip through it here to get an better glimpse at the features and general overview: http://www.pixeltrollgames.com/fes/docs/index.html
      FES is carefully designed and well optimized (see live stress test demo below). Internally it uses batching, it chunks tilemaps, is careful about memory allocations, and tries to be smart about any heavy operations.
      Please have a quick look at the screenshots and live demos below and let me know what you think! I'd love to hear some opinions, feedback and questions!
      I hope I've tickled your retro feels!



      More images at: https://imgur.com/a/LFMAc
      Live demo feature reel: https://simmer.io/@Dafu/fes
      Live blitting stress test: https://simmer.io/@Dafu/fes-drawstress
      Unity Asset Store: https://www.assetstore.unity3d.com/#!/content/102064

      View full story
    • By DevdogUnity

      Ho ho ho
      Tis the season of Christmas surprises, and we have a awesome one for you! 🎅  
      Sponsored by all your favorite Unity Asset Store developers, Nordic Game Jam, Pocket Gamer Connects, and co-hosted by Game Analytics, we (Joris and I – Devdog) are launching the second edition of our yearly Christmas Giveaway Calendar for all Unity game developers!
      You can already now sign up right here.
       
      So what’s this all about?
      For the past weeks, we’ve been collecting sponsored gifts related to Unity (asset vouchers, product keys, conference tickets etc.), and throughout each day of December leading up to Christmas Day on the 25th, we will be sending out these sponsored gifts as early gamedev Christmas presents via e-mail to hundreds of lucky winners.
      The total prize pool is at $35,000, with over 1200 presents donated by the awesome sponsors!
       
      Merry Christmas from Devdog, Game Analytics, and every single one of the sponsors.

      View full story
    • By sveta_itseez3D
      itSeez3D, a leading developer of mobile 3d scanning software, announced today a new SDK for its automatic 3D avatar generation technology, Avatar SDK for Unity. The Avatar SDK for Unity is a robust plug-n-play toolset which enables developers and creatives to integrate realistic user-generated 3D avatars into their Unity-based applications. SDK users can allow players to create their own avatars in the application or integrate the SDK into their own production processes for character design and animation.
      “Virtual avatars have recently become increasingly popular, especially in sports games and social VR apps. With the advance of VR and AR, the demand to get humans into the digital world is only increasing”, said Victor Erukhimov, itSeez3D CEO. “Our new Avatar SDK for Unity makes it super-easy to bring the avatar technology into any Unity-based game or VR/AR experience. With the Avatar SDK for Unity now every developer can bring face scanning technology into their games and allow players to create their own personalized in-game avatars, making the gameplay much more exciting and immersive.”
      Key features of the Avatar SDK for Unity:
      Automatic generation of a color 3D face model from a single selfie photo in 5-10 seconds (!). Works best with selfies, but can be used with any portrait photo.
      Shape and texture of the head model are unique for each person, synthesized with a deep learning algorithm crafted by computer vision experts
      Head models support runtime blendshape facial animations (45 different expressions)
      Generated 3D heads include eyes, mouth, and teeth
      Algorithms synthesize 3D meshes in mid-poly resolution, ~12k vertices, and ~24k triangles
      Six predefined hairstyles with hair-recoloring feature (many more available on request)
      Avatar generation API can be used in design-time and in run-time, which means you can allow users to create their own avatars in your game
      Cloud version is cross-platform, and offline version currently works on PCs with 64-bit Windows (support for more platforms is coming soon)
      Well-documented samples showcasing the functionality.
       
      Availability
      The Avatar SDK for Unity is offered in two modes - “Cloud” and “Offline”. The “Cloud” version is available at http://avatarsdk.com/ and the “Offline” version is available by request at support@itseez3d.com.
      ###
      About itSeez3D
      At itSeez3D, we are working on the computer vision technology that turns mobile devices into powerful 3D scanners. itSeez3D has developed the world's first mobile 3D scanning application that allows to create high-resolution photorealistic 3D models of people's' faces, bodies and objects. The application is available for iOS and Windows OS mobile devices powered with 3D cameras. In 2016 the company introduced Avatar SDK that creates a realistic 3D model of a face from a single selfie photo. To learn more about itSeez3D scanning software and 3D avatar creation technology, please visit www.itseez3d.com and www.avatarsdk.com.

      View full story
    • By khawk
      Unity has posted the Unity Austin 2017 playlist on YouTube. From their tweet:
      View the full playlist at https://www.youtube.com/playlist?list=PLX2vGYjWbI0TI_C4qouDw7MSSTFhKJ6uS or below:
      .

      View full story
  • Popular Now

  • Advertisement