Free and Open Source real time strategy game with a new take on micro-management

Difference between revisions of "Todo:Interactive Campaign Features"

From Globulation2

Jump to: navigation, search
m (category:en)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Things to make campaign making and interactivity better (ignore syntax, focus on the concept):
Things to make campaign making and interactivity better (ignore syntax, focus on the concept):
* Implement a light weight, yet powerful and effective scripting language to replace SGSL
* Implement a light weight, yet powerful and effective scripting language to replace SGSL (like squirrel lang)
* Add code to better interact with users current game screen state:
* Change the current highlighting options to the following:
** highlight(playerid, unitcode, customname)
**: (where playerid is the player whos units should be highlighted, unitcode would be constants (WORKERS, MAINMENU_BUTTON, RIGHT_SIDEBAR, BARRACKS, FREE_EXPLORERS, and FLAG_TAB for example), and custom name is a string that can be used to unhighlight in the next code
** unhighlight(customname)
**: (where customname is the name set when making the highlighted game element)
* Add code to better interact with users current game state:
** when mainmenu::opened do
** when mainmenu::opened do
** when flagtab::opened do
** when flagtab::opened do
** when worker::selected do
** when worker::selected do
** when enemy::worker:selected do
** when enemy::worker:selected do
* Add code to better interact with users current gameplay state:
** workerCount(playerid)
** warriorCount(playerid)
** explorerCount(playerid)
** allyCondition(playerid) -> dead, attacked, healthy
* Along with the already implemented ability to set alliances:
** enableFruit() / disableFruit()
** revealMap() or disableFOW()
* Ability to transfer units/buildings from one campaign to another. Suggested ways:
* Ability to transfer units/buildings from one campaign to another. Suggested ways:
** saveMapData() -> loadMap('part2.map') -> loadMapData() <- checking that the maps were the same
** saveMapData() -> loadMap('part2.map') -> loadMapData() <- checking that the maps were the same
** saveMap('part2.map') -> loadMap('part2.map', 'scripts/script2.script') <- loading a saved map with a new script (overwriting default one in the map)
** saveMap('part2.map') -> loadMap('part2.map', 'scripts/script2.script') <- loading a saved map with a new script (overwriting default one in the map)
** saveMap('part2.map') -> loadMap('part2.map', 'script2') <- loading a saved map using a script embedded into the map header
** saveMap('part2.map') -> loadMap('part2.map', 'script2') <- loading a saved map using a script embedded into the map header
* Ingame timer commands from the moment a command is executed, for things like "you have 5 minutes to build up forces", and the ability to check it (would at the same time enable the ability to limit total game time)
** timer1 = startTimer()
** print timer1
** endTimer(timer1)


More to come
More to come

[[Category:en]]

Latest revision as of 15:48, 2 October 2009

Things to make campaign making and interactivity better (ignore syntax, focus on the concept):

  • Implement a light weight, yet powerful and effective scripting language to replace SGSL (like squirrel lang)
  • Add code to better interact with users current game screen state:
    • when mainmenu::opened do
    • when flagtab::opened do
    • when worker::selected do
    • when enemy::worker:selected do
  • Add code to better interact with users current gameplay state:
    • workerCount(playerid)
    • warriorCount(playerid)
    • explorerCount(playerid)
    • allyCondition(playerid) -> dead, attacked, healthy
  • Along with the already implemented ability to set alliances:
    • enableFruit() / disableFruit()
    • revealMap() or disableFOW()
  • Ability to transfer units/buildings from one campaign to another. Suggested ways:
    • saveMapData() -> loadMap('part2.map') -> loadMapData() <- checking that the maps were the same
    • saveMap('part2.map') -> loadMap('part2.map', 'scripts/script2.script') <- loading a saved map with a new script (overwriting default one in the map)
    • saveMap('part2.map') -> loadMap('part2.map', 'script2') <- loading a saved map using a script embedded into the map header
  • Ingame timer commands from the moment a command is executed, for things like "you have 5 minutes to build up forces", and the ability to check it (would at the same time enable the ability to limit total game time)
    • timer1 = startTimer()
    • print timer1
    • endTimer(timer1)

More to come

Misc