Saturday, April 30, 2011

New project...

 Lately I've been thinking about a new project, something I've not done before (well, at least no in deep), is a game engine, my engines are related to:

  • Graphics engine
  • 2d engine
  • 3d engine
but is time to start to create a game engine, something that would make create a simple game an "easy" and a fast task.

The last game I played was Cave Story, is the kind of game that I like a lot, it has RPG elements, actions, puzzles, is fast, handy, retro style, nice music, good story..., so my idea is to create an engine that allows to create that kind of game.

Necessary components:
  • Game
    • Variable
      • Name
      • Default value
      • Type: int, bool, decimal, date, time, string
      • Text
      • Scope: game, inventory, others
    • Sound
      • Id
      • Name
      • Type: normal,pingpong,circular,fade
    • Song
      • Id
      • Name
    • Weapon
      • Id
      • Name
      • Damage
      • Level
      • Range
      • Flags
      • Energy to level up
      • Current energy
      • Max energy
    • Actor
      • Id
      • Type (customizable)
      • Name
      • Text
      • Level
      • Image
      • Health
      • Power
      • Defense
      • Flags: solid, invincible,shootable,friend, etc
      • Hurt sound
      • Death sound
      • Collision box
      • Weapon
    • Location
      • Id
      • X,Y
      • Name
    • Map
      • Id
      • Name
      • IsDefault
      • Trigger
      • Size x,y
      • ScrollType: auto,actor
      • Layers[]
      • Actors[]
      • Sounds[]
      • Songs[]
      • Locations[]
  • RPG engine
    • Item
      • Id
      • Name
      • Scope: Game, inventory, others
      • Map
      • Image
    • Inventory
      • Items[]
    • Text
      • Id
      • Language
      • Actor
    • Condition
      • Variable
      • Comparation
      • Value
    • Trigger
      • Variable
      • Action: inc, dec, not, new
      • Value
    • Talk
      • Actor
      • TextId[]
      • Triggers[]
    • Quest
      • Id
      • RelatedItem
      • Text
      • Image
      • Conditions[]
      • Triggers[]
      • Talks[]
  • Scripting
    • Command list
      • Refill ammo
      • Give weapon A and ammo B
      • Lose weapon A
      • Jump to A if hero has B
      • Animate actor A with animation B to direction C
      • Execute script A
      • Close message box
      • Clear message box
      • Convert actor A into actor B and dir C
      • Stop song A
      • Start song A
      • Start music A
      • Stop music A
      • Delete actors of type A
      • Jump to A in actor id B exists
      • Exit menu
      • Show image A in vox
      • Fadein
      • Fadeout
      • Clear flag A of actor B
      • Set flag A of actor B
      • Flash screen during A milliseconds
      • Exefute script  A if flag B is set
      • Fadeout music
      • Focus actor A at location B
      • Focus hero at location A
      • Show item A in box
      • Hide hero
      • Show hero
      • Hide actor A
      • Show actor A
      • Reset Game
      • Add item A
      • Remove item A
      • Remove actor id A
      • Remove actors of type A
      • Jump to A if actor B has C
      • Lock keyboard
      • Release keyboard
      • Load game
      • Save game
      • Restore health
      • Increment max health to A
      • Show map
      • Move actor A to location B dir C
      • Move hero to X,Y and adinationally execute script B
      • Show message A at  top
      • Show message B at  bottom
      • Set hero dir A
      • Jump to location A if actor type B exists
      • Wait for key
      • Set teleporter to location A
      • Quake screen for A milliseconds
      • Create actor A type B at location C direction D
      • Pause game
      • Resume game
      • Yes/No question
      • No weapons
      • Show text
    • Script
      • Id
      • Commands[]
Some parts are already out of the box, while others must de developed, let's hope I find the time and the motivation to start this new project

2 comments:

  1. Hello Abel,

    do you still have previous editions of ChessKISS
    (= binaries + sources) for upload on your website?

    Norbert

    ReplyDelete
  2. Yes, I've all editions stored on my computer ans also on media fire, are you interested on something specific?

    ReplyDelete