Difference between revisions of "Java game development"

From Got Opinion Wiki
Jump to navigation Jump to search
(Created page with "My Java game development notes. == libgdx == [http://libgdx.badlogicgames.com/documentation.html Getting started] [http://badlogicgames.com/forum libgdx forum] Some [http:...")
 
m
 
Line 8: Line 8:


Some [http://libgdx.badlogicgames.com/gallery.html libgdx games]
Some [http://libgdx.badlogicgames.com/gallery.html libgdx games]
== Economics in games ==
I've always had an interest in games that have a realistic feel to them. A game's economic system is just one part of that experience. A great economic system can make games more interactive. I want to create immersive environments for players where players can make a difference.
I ran across an article titled [http://www.gamasutra.com/blogs/LarsDoucet/20130603/193491/BazaarBot_An_OpenSource_Economics_Engine.php BazaarBot an Open Source Economics Engine] with a link to a [http://larc.unt.edu/ LARC] technical report entitled [http://larc.unt.edu/techreports/LARC-2010-03.pdf Emergent Economies for Role Playing Games] (EE4RPGs) that basically outlines a basic free-market system. I found the EE4RPGs paper interesting and decided to write a pure Java implementation with EE4RPGs as a guide.
=== My game economic engine (EE) ===
'''My initial design thoughts'''
* Use EE4RPG as a basic guide
* Write a pure Java implementation
* Very low computational footprint
* Multi-threaded or "thread safe"
* Agents can be separated by time/distance
* Agents within a market have access to instant communications
* Support 1+n markets
* I'd like to support two types of agent life cycle, one is perpetual (never dying) and one is dynamic (agents can be created/eliminated)
After stand alone testing of the EE I would like to do more extensive testing. Maybe I will drop EE into a large chunk of space then I'll design a system of handling transportation of goods/services (commodities) in space. Initially I thought of using a Earthly-based simulation but why limit myself to one galactic object known as Earth? So a "space hauling simulation" sounds like a good test bed.
'''My initial design thoughts on the space hauling simulation'''
* Write pure Java implementation
* dedicated server option
* 1+n client/player support
* Create a freight market (basically a bulletin board showing all open commodities to be shipped, accepted on contract basis)
** open commodity shows
*** buyer basic information (at least name, maybe some other data like political/economic affiliations)
*** buyer location of commodity drop-off basic information (at least address, maybe security level of destination or other tidbits)
*** buyer contract offer (transportation price)
*** distance between pick-up and drop-off (shortest route, maybe option for shortest/safest)
*** seller location of commodity pick-up basic information (at least address, maybe other tidbits)
*** any other detail that facilitate the acceptance of hauling contracts
* Create freight haulers (freight space ships)
* Create freight companies (collection of many freight haulers)
* Create pilots
** pilots are human / alien
** pilots age, have personalities, change over time, morale, lifestyles, eating habits, and many other factors
* Create a pilot market (basically a bulletin board showing all pilots for hire)
* Easy option to enable logging to disk of game data for export
** support export data to text in HTML or SQL.
** support export of a player pilot
** support export of a player freight hauler
** support export of a player freight company
* random space events
* add immersive relationship model
* add space positioning system for system addressing
* create randomly generated galaxies (seed based to share those cool galaxies) full of space objects
* add ship to ship combat
* add customization of ships
* add leader boards (different metrics)
* add retirement options (game ends voluntarily by player or retirement age addressed)
* add RPG elements (pilots grow and age)
That's my initial thoughts, with family and other priorities let me see how far I can get on spare time here and there.

Latest revision as of 09:33, 12 December 2014

My Java game development notes.

libgdx

Getting started

libgdx forum

Some libgdx games

Economics in games

I've always had an interest in games that have a realistic feel to them. A game's economic system is just one part of that experience. A great economic system can make games more interactive. I want to create immersive environments for players where players can make a difference.

I ran across an article titled BazaarBot an Open Source Economics Engine with a link to a LARC technical report entitled Emergent Economies for Role Playing Games (EE4RPGs) that basically outlines a basic free-market system. I found the EE4RPGs paper interesting and decided to write a pure Java implementation with EE4RPGs as a guide.

My game economic engine (EE)

My initial design thoughts

  • Use EE4RPG as a basic guide
  • Write a pure Java implementation
  • Very low computational footprint
  • Multi-threaded or "thread safe"
  • Agents can be separated by time/distance
  • Agents within a market have access to instant communications
  • Support 1+n markets
  • I'd like to support two types of agent life cycle, one is perpetual (never dying) and one is dynamic (agents can be created/eliminated)

After stand alone testing of the EE I would like to do more extensive testing. Maybe I will drop EE into a large chunk of space then I'll design a system of handling transportation of goods/services (commodities) in space. Initially I thought of using a Earthly-based simulation but why limit myself to one galactic object known as Earth? So a "space hauling simulation" sounds like a good test bed.

My initial design thoughts on the space hauling simulation

  • Write pure Java implementation
  • dedicated server option
  • 1+n client/player support
  • Create a freight market (basically a bulletin board showing all open commodities to be shipped, accepted on contract basis)
    • open commodity shows
      • buyer basic information (at least name, maybe some other data like political/economic affiliations)
      • buyer location of commodity drop-off basic information (at least address, maybe security level of destination or other tidbits)
      • buyer contract offer (transportation price)
      • distance between pick-up and drop-off (shortest route, maybe option for shortest/safest)
      • seller location of commodity pick-up basic information (at least address, maybe other tidbits)
      • any other detail that facilitate the acceptance of hauling contracts
  • Create freight haulers (freight space ships)
  • Create freight companies (collection of many freight haulers)
  • Create pilots
    • pilots are human / alien
    • pilots age, have personalities, change over time, morale, lifestyles, eating habits, and many other factors
  • Create a pilot market (basically a bulletin board showing all pilots for hire)
  • Easy option to enable logging to disk of game data for export
    • support export data to text in HTML or SQL.
    • support export of a player pilot
    • support export of a player freight hauler
    • support export of a player freight company
  • random space events
  • add immersive relationship model
  • add space positioning system for system addressing
  • create randomly generated galaxies (seed based to share those cool galaxies) full of space objects
  • add ship to ship combat
  • add customization of ships
  • add leader boards (different metrics)
  • add retirement options (game ends voluntarily by player or retirement age addressed)
  • add RPG elements (pilots grow and age)

That's my initial thoughts, with family and other priorities let me see how far I can get on spare time here and there.