Dale

Members
  • Content count

    77
  • Joined

  • Last visited

Community Reputation

122 Neutral

About Dale

  • Rank
    Member
  1. Thanks for all the input everyone. :) Greatly appreciated. Now to go off and update it. Dale
  2. Thanks for the feedback. :) I got similar feedback from Soren Johnson too. I posted it in a few locations and am collating all the feedback together. Gamedev was just a bit behind all the other locations for feedback :) Dale
  3. So no interest at all? No feedback necessary cuz the doco is perfect? :) Dale
  4. Okay, upon advice I have updated and finished the design document. It no longer follows any template, but more how I feel the flow should be of the document. Please feel free to make any comments. :) Dale
  5. Game Designer Question

    You don't "need" to know a programming language but there are definite advantages to knowing one. For instance, for designers it's probably better they learn the language that the game's engine uses so they can at least know the capabilities of the engine. It's sort of like an architect. They don't "need" to know how to build a house, but their houses are better if they do know. Dale
  6. Hi, thanks for the feedback. :) I completely understand what you're saying about using someone else's design template. I run the risk of making the same mistakes as they might have. Also, it limits my design style as I have to try and force it into their style. I will re-look over the document and modify to how I'm comfortable with and re-post it here. :) As for a concept sheet, I will ensure I have one written up for the update. It's a bit of a marketing tool correct, analysing the market, target demographics etc, as well as the game's basic concept. Thanks mate. Dale
  7. Mechanics The Game World: Key Locations: • Rome and Constantinople will act as the world’s centers of power at game start. • Islamic religion will occupy a small area in a corner of the map. • Pagan religion will occupy a small area in another corner of the map. • Numerous tribal states varying in size from 1-3 cities/towns will be spread across the map. The player will be in control of one of them. Scale: The scale will be such that large cities will sprawl across the map. Armies will occupy an area of the map depending on the size of the army. In literal turns, a “square” on the map (which could be 50x50 pixels) will contain numerous buildings and an amount of soldiers from an entire army. A large city could occupy a number of tiles on the map. Europe Map Detail: The historical Europe map will look like Europe and have cities in their actual locations. Map features and city locations will be accurate to their real world locations, including religions, Rome and Constantinople, as well as terrain formations. This map will be as if the player was actually living in 500AD as the leader of one of the existing tribal states that formed during the collapse of the Roman Empire. Random Map Detail: The random map generator will be capable of creating an entire world, including terrain formations, seas lakes and rivers, city locations and nations. Rome and Constantinople will be located in their respective sphere (east or west) and Islam and Paganism will be located in random corners. The player will be able to adjust various settings within the configuration of the map generator such as sea level, world size and other options. Player Map Detail: Players will be able to create a terrain height map graphic and use that to allow the terrain generator to form the world. Using the grayscale method (where the lighter shade is a higher point on the map) the possibilities are endless for the maps created. Game Play Models: Resources: Natural resources will be spread across the map. These resources are able to be collected by the player to be processed into goods. To collect these resources the relevant building must be built on the resource to collect it. For example, a player must build a farm on a wheat resource to collect wheat to be processed by a bakery into food. Economy: The economy of Empires will operate on traditional production chains based on the era. For example, a player can build an iron ore mine on an iron resource which will stockpile an amount of iron ore each turn. The player can then build a forge in one of the cities/towns of the nation which will process the iron ore into steel. The player can then build other manufactories which process the steel into other items such as weapons. Similarly, farms will produce wheat or livestock which is processed into food for the population of the nation. As well as internal production, trade with other nations will play a part to generating a strong economy. The player will be able to export surplus goods to other nations and import resources and goods that they may be short on. Religion: There are four main religions in the game. These are Christianity, Orthodox, Islam and Paganism. Christianity reflects the general religion of Europe as a whole at the time. Orthodox will occur via a religious schism during the game to generate an offshoot Christian religion. Islam represents the growing power of the Islamic religion and Arab dominance of the Middle East, North Africa, the Balkans and southern Iberia during the time period. Paganism represents the north-eastern European non-Christians who were converted during the time period. Religion will play a role on governing and diplomacy within the game. The leader of the player’s religion may request them to participate in a Crusade/Jihad, and depending on their actions relations with other nations will be affected. Also, religions require players to pay a tithe in gold or goods, or the player faces excommunication or even war. In terms of religion affecting governing the religion of a city will play a factor in what a player builds there. For example, if a player built a Christian cathedral in an Islamic city there would be a negative affect on the populace. Diplomacy: Every nation will have diplomatic relationships with other nations in the game. For Christian (and later Orthodox) nations they will also have an important diplomatic relationship with their comparable centre of world power (Rome or Constantinople). Diplomatic relationships will be affected by war, trade, religion, vassalage, fealty and national power. National power will be the influence and respect a nation can exert on other nations. For instance, a militarily powerful nation will be able to demand a lot more from militarily weak nations, and nations with a good another nation wants will be able to demand more from them in the trade. Nations will be able to increase diplomatic relations with a nation in three ways. The first is to perform favorable agreements with the other nation and slowly over time their regard and respect for you will increase. This could result in either the other nation becoming a vassal or swearing fealty to the player. A nation becoming the player’s vassal is a minor important diplomatic victory for the player as a vassal while remaining independent will pay a tithe to the player and allow access to their resources and army. A vassal has an automatic alliance with the player. A nation that swears fealty to the player is a major diplomatic victory as that nations lands and possessions are transferred to the player. Governance: The player will be able to govern their nation and shape how it operates. They are able to choose specific methods of how their nation is to be run which will influence various aspects of their nation (similar to Civilization IV’s civics concept). Decisions will be made in the areas of law and order, centralized/decentralized government, taxes, religion, trade and military structure. Science & Technology: Science & Technology will operate on two levels: research and inventions. Players can invest gold into either of these two areas to influence the speed at which discoveries are made. Research represents the raw learning of the nation. Inventions are discoveries of how to use that research. For example, gunpowder is the result of research into saltpeter, whilst the cannon is an invention that uses gunpowder. Society: Society represents a nation’s culture and nationalism in the game. A strong society will generate a lot of culture and national pride. The level of society is influenced by governance decisions, diplomacy (no enemies means the population fears no neighbor), the economy, science and technology and religion. Society’s strength is representative of the civil strength of a nation. The higher society that a nation has, the happier and more peaceful its citizens are. On the other hand, a low society level could result in strikes, crime or even citizen revolts. Military: The player’s military is made up of a number of parts. The player will have direct control over their own army and navy. The player may also have full or partial control over a vassal’s army and navy. A nation’s military strength is directly related to the strength of its army and navy. A nation with high morale troops who are well paid and have a higher technological level of weapons will be stronger than a nation with low morale troops who are badly paid with weapons of a low technological level. Thus it is quite possible to have a powerful small army and navy but still maintain a high military strength. A nation with a higher military strength will be more effective in threats than a nation with a low military strength. The military is responsible for the defense of the nation in war, the conquest of the nation’s enemies, and the squashing of citizen revolts. The military will exert a control over the populace if stationed in cities, but a highly rebellious city may still try to revolt. Armies will be a combination of foot soldiers (swords and pikes), cavalry, engineers (who build engines of war and breaches in city walls), cannon and gunpowder soldiers. When two enemy armies meet combat will occur. Combat will take place on a popup screen which overlays the main view. Both armies will be represented on the map. Each combatant will have the opportunity to deploy their troops on the field in the formation they wish. Each combat round will see each military unit (which represents a number of men not a single man) either move, perform combat or retreat/flee. The winner of the combat is the combatant who destroys the opposing army or forces that army to retreat/flee. Morale will be the deciding factor in deciding whether a unit flees or not. If a unit incurs more damage than they give to their opposing unit, their morale will drop while the other unit’s morale will rise. When a unit’s morale reaches a certain level the unit will flee the field. Units that flee the field are not able to continue in that battle but will reappear on the map ready for their next move. Morale can be raised by higher pay, keeping the unit at full strength, winning battles and the level of pillaging units are able to perform after winning a battle. Though allowing a high level of pillaging (through governance) will have a detrimental effect on the nation’s diplomatic relationships and society. Technical Game Engine: Overview: The game engine will operate on an event-based system. For example, if the player clicks on something, a MOUSECOMMAND event is initiated. Whenever the player interacts with the game (whether human or AI), or whenever any processing work is required, an event will be sent to the main game engine. The main game engine will process these events and update the game database as required. The rendering system will retrieve the current world information to update the display for the player. Event System: The game engine will process via the use of an event-based system. Every time something is required to be done in the game it will generate an event. An event can be as simple as clicking on a button, or as complex as processing a nation’s economy at the end of the turn. The event system will hold no data which is contained in the game database, but the event system will process data from game database and then return it. Game Database: The game database will store all of the information required for the game. No actual processing work is done within the database. A game engine event will request information from the game database, the game engine will process that data and then send any changes required back to the game database for storage. When saving a game, the game database will dump all information into the save game file. Loading will retrieve the information back into the database. Rendering System: The game will be built on the OGRE 3D graphics engine. This is an extremely powerful and reputable free graphics engine. The map will be represented within a cubic definition. The four sides of the cube will define the “far horizon” and the “edge of the world”. The top will represent the “sky” but as the camera will be looking down on the terrain there will be no need to render anything there. The base will contain the generated terrain. The terrain will have height with mountain ranges and valleys and rivers and seas. Lights & Cameras: The camera will operate in a looking-down configuration. The camera will be able to zoom in and out as well as rotating to show different angles of objects on the ground. In no way will the camera be able to rotate up to show the “sky”. The default view will be representative of traditional 2D-isometric views in older games. There will be one main light source in the game, that being the sun. The sun will radiate light downloads at an angle to the terrain to allow for shadows to fall on the ground from trees, buildings and other objects. There is no requirement for night lights as night is not within the game. Map Generator: The map generator will allow for the loading of pre-made maps, as well as the generation of random maps for the game. The map generator will be broken into two components: terrain generation and object placement. The terrain generation component will be the part which creates the landmasses and assigns terrain types to the land. The generator will start by forming the land rise and fall. This will generate low points and high points. The second step is to take a pre-configured sea level and assign ocean to any point lower than this setting. The third step is to simulate rainfall patterns across the map (from west to east). The fourth step will take each tile’s rainfall and move it across the map. This will generate rivers and where water accumulates will be lakes. The fifth step is to assign terrain types to the map. Terrain types will be grass, mountain rock and icecaps. The last step of terrain generation is to assign forests across the land. The second component (object placement) will firstly assign resources across the map, then cities/towns, then the various nations and religions, and finally any starting units. This will complete the generation of a full random map. Pre-defined height map files and scenario text files will replace certain steps in the map generator. A height map graphic file will replace steps one to four of terrain generation, and a scenario’s text files will replace the entire object placement component. Game Assets: Overview: The game assets refer to the graphics, sound, music and configuration files. All game assets will be external files to allow players to mod them. File/Folder Layout & Format: The base Empires! folder will contain the main executable and any required DLL files. The main configuration file will reside here as well. The main configuration file will contain the application settings required to run the game. Off the main folder will reside five separate folders: sound, graphics, data, scenarios and saves. The sound folder will be broken into two further folders: sfx and music. The graphics folder will be broken into a number of folders such as: icons, units, buildings, terrain, buttons, etc. The data folder will contain the default settings and configuration files for the game. Such files include the settings for buildings, units and technology. The scenarios folder will contain a folder for each scenario. Each separate scenario folder will contain the height map graphic file and the scenarios text files for object placement. The last folder, saves, will contain all of the player’s saved games. From here they can save or load any game. Graphics Formats: As Empires! will be a 3D game, the objects in the game need to be configured for 3D. Thus, objects will be created in 3DS Max and exported to be loaded into the game. Objects will also have animations. Any graphics will be in DDS format to allow fast and efficient loading of graphics into the game. Sound & Music Formats: As Empires! Will utilize FMOD sound system the music is able to be in MP3 format. This will allow for the highest quality music possible to be loaded into the game. Sound effects will be in WAV format. This will allow for custom music and sound files to be created for scenarios. Settings/Configuration Files: All settings and configuration files, either for the main game, or for scenarios will be simple text files. Each element will have a property and a value. A group of elements will be able to be linked together through the use of braces { }. In this way, a single unit can be defined through a number of elements all linked together. User Interface: Main View Screen: The main view will be broken into three parts. The main component of the screen will contain the map view. This is where the player will perform all of their commands, moving armies, building, scrolling around the map. At the top of the screen will be a thin control panel containing the buttons required to view the detailed information screens. There will also be the main menu button and help button which will direct the player to screens related to their functions. This control panel will be common to every screen in the game and serve as the players guide to navigating through the game. At the bottom of the main view will be the information panel. There will be three parts to the information panel. Part 1 will contain a mini-map of the game world where the player can click to jump to that location in the world. Part 2 will contain the command buttons, including “build”, “govern” and other commands which allow the player to rule their nation. Part 3 will contain the dynamic information screen. If an object is selected then information on that object will be displayed here. Otherwise, if no object is selected then generic national information (such as total gold and research) will be displayed. Information Screens: The detailed information screens will be popup screens over the main view. The common control panel will still be visible and usable while any detailed information screen is displayed. These screens will display the specific information for that area of the game. For example, the economics screen will display a list of all resources and goods, how much is stored of each item and other specific information to the economy of the nation. Similarly, the science screen will display the technology tree, as well as any research projects underway or inventions being developed. Intro/Credits Screens: The other game screens include the title screen, any movies or cut-screens that will be displayed, credits, and main menu, options and help screens. These screens will operate outside of the operation of the actual game as they do not interact with any part of the game engine. Options Menu: The options menu will be accessible by pressing ESC whilst in-game. The options menu will allow you to retire the game, exit to the desktop, save the game, load a game as well as graphic and sound options. [Edited by - Dale on November 2, 2006 5:19:52 PM]
  8. Hi everyone. :) I'm working on an idea I've had for a game and I believe I've got a pretty good grasp on the workings of the game. Now I will admit this is my first attempt at writing a full design document (I've written a few in the past for scenarios of games). I was hoping to get some feedback from people as to what they think of my design document. Also, feel free to comment on my game idea too if you wish, but more importantly for me I'm interested in the amount of content, my actual descriptions (does it get the game idea across), etc. Thanks in advance. :) Dale -------------------------------------------------------------------------------- Design Document for: Empires! Forge a Nation, Create an Empire All work Copyright ©2006 by Dale Kent Written by Dale Kent Version # 1.00 Friday, November 03, 2006 Description Design History: This section will describe the stages taken to create the full design of the game Empires. Listed here is changes made in each version of the design document for the game. Version 1.0: Version 1.0 includes the initial layout and description of the game design. The document provides the base roadmap to expand the design of the game on. There are some sections still to be filled in, but the basic premise of the game can be seen. Version 1.1: Version 1.1 is the first complete edition of the design document. The entire game design is discussed with each part of the design addressed. Game Overview: Goals: Goal 1 Empires will be a turn-based strategy game set in the time period 500AD-1500AD in medieval Europe. The game will be a grand strategy game where the player controls the national decisions of their nation. Players are required to guide their nation from a single tribal state to a full fledged Royal Authority Empire. Goal 2 Empires will be similar in style to other such grand strategy games like Age of Empires and Sid Meier’s Civilization. However there will be distinct differences in game play. For example, in Civilization due to the epic history traversed through the game, certain concepts which will be highlighted in Empires are abstracted in Civilization. Similarly, whilst Age of Empires concentrates on expansion by conquest, in Empires a nation will be able to expand and exert a larger influence via trade, diplomacy, religion and conquest. Goal 3 Empires will be built in such a way as to allow scenarios to be created for the game by players of the game. The map will be defined via a height-map graphic, whilst the initial settings for the game will be controlled via easily editable text files. These text files will contain nation definitions, starting locations, initial building and army locations and composition. FAQ: What is the game? Empires is a turn-based strategy game based on Medieval Europe from the end of the Roman Empire till the dawn of the Age of Discovery. The years covered will range from 500AD till 1500AD. The game will be a grand strategy Empire builder complete with working economy, diplomacy reflecting the time period, as well as other features in the same strain as Civilization and Age of Empires. Why create this game? In line with my belief that epic history games such as Civilization over-simplify the topic, this game is the beginning of my grand design focusing on specific eras of history. This will be the first game in a series which will eventually span from the dawn of civilization to the near-future. Where does the game take place? The game takes place in a world similar to Medieval Europe. The politics, social fabric, ebb and tide, military, economics and other concepts will reflect the time period of 500AD to 1500AD. The game starts at the end of the Roman Empire in a time when feudal society was just beginning to take shape. The conclusion of the game will see Royal Authority reign supreme marking the end of feudal society. What does the player control? The player will be in control of a single nation chosen from the many tribal states that existed after the collapse of Roman Authority. The player must take this tribal state and forge a fully fledged Empire using diplomacy, trade, religion and military might. During the game the player may gain partial control over various other vassal nations and full control over nations that have sworn fealty. What is the main focus? The player’s focus is to take a small tribal state and forge a united Empire under their rule. They may take control of other nations by conquest, by other nations swearing fealty to them, or any other means available to the player. The ultimate goal to win is to take your small tribal state through the many stages till your nation is a leading Royal Authoritarian Empire ready to explore the world and expand their influence. A Royal Authoritarian Empire has either conquered or had other nations swear fealty to them, has a strong economy with many chains of production, trades with fellow nations, and has other nations vote on them as a great power within the world. The ultimate victory in Empires is to have fellow nations vote the player’s nation as the strongest great power in the world. What’s different? Currently there are a number of games at the present time that are also within the same gaming sphere as Empires. However Empires will be different in the following ways: • Age of Empires III: Empires will be focusing on more than military conquest. Whilst there are similarities between the games, they are both in two different time periods, military conquest plays a sole part in expanding within AOE3, and the nations used are already fully-fledged Empires. • Civilization IV: This game concentrates on the epic scale of history. Due to this a lot of concepts that are highlighted in Empires are very abstract. For instance, religion will play a much larger role in Empires than the generic single diplomatic bonus religion depicted in Civ4. • Rise and Fall of Ancient Empires: This game focuses on the ancient time period in the time of Greece and the beginnings of the Roman Empire. Also, the game has a large component based on first-person role playing in relation to the leaders. Feature Set: General Features: • Huge flat-map world. • Many tribal states vying for power from the former Roman Empire. • Areas of barbarians, who are ripe for conquering or conversion to the Faith. • Dynamic religion model with schisms, crusades and the incursions of Islam into the area depicted. • Scientific discoveries allowing the pursuit of new inventions which advance society. • Many diplomatic options including royal weddings, declarations of war, cassis belli, trade agreements, fealty and oaths of allegiance. • Fully dynamic terrain where human habitation affects the land (such as forests being chopped down, cities spreading across the land, roads and farmland). • Complex economy involving the collection and stockpiling of raw materials, and the processing of these resources into goods which can be used for construction, armies, trade or diplomacy. Multi-player Features: Initially, hot-seat and PBEM will be the only MP methods supported. This may change later. Editing Features: Editing of the game will be via external text files that will control most parts of the game. Terrain will be loadable via terrain mapped graphic files. All 3D objects will be 3DS Max objects exported ready for use. Scenarios will be easy for players to create using a single terrain mapped graphic file, and a combination of text files containing the settings for the scenario. Additional 3D objects will be loadable via the scenario if required. Victory Conditions: Overview: There will be two types of victory in Empires, a minor victory and a major victory. A minor victory will be obtained when a nation scores the required amount of points in one of the following categories: • Military • Society • Religion • Economics • Diplomacy Once a minor victory has occurred, that nation will have the option to play on for a major victory. The major victories also come on two levels: • Become a Great Power • Become the strongest Great Power (the ultimate victory in Empires) Military Victory: A military victory is declared once a nation has accumulated a set threshold of military points. Military points are scored for the size of the player’s army and combat results. Society Victory: A society victory is declared once a nation has accumulated a set threshold of society points. Society points are scored for science and technology, the happiness of the population, the progression of government and infrastructure (buildings, roads, resource collection). Religion Victory: A religion victory is declared once a nation has accumulated a set threshold of religion points. Religion points are scored for converting the barbarians to the player’s religion, participation in crusades/jihads and interaction with the religious capital (Rome and Constantinople). Economic Victory: An economic victory is declared once a nation has accumulated a set threshold of economic points. Economic points are scored for setting up trade agreements, importing/exporting goods, setting up trading posts in other nations (allows the formation of a trade agreement), owning monopolies on goods and keeping a positive cash flow. Diplomatic Victory: A diplomatic victory is declared once a nation has accumulated a set threshold of diplomatic points. Diplomatic points are scored for interactions with other nations, following through on agreements (Eg: following through on a defense treaty), the number of vassals and nations who swore fealty. Great Power: If the player opts to play on (if they receive a minor victory during the game) the game will play till conclusion. This is the first of: • all 1000 turns being played • 1 nation remaining in the game Once one of the above conditions is met the scores of all minor victory conditions are added together to give a nations total score. The top total score is declared the strongest Great Power of the game (and is the ultimate victory in Empires!) and the top 5 total scores are declared Great Powers of the game. If there is only one nation remaining in the game, then that player is the winner by default. The Game World: Overview: The world’s terrain and architecture will be based on medieval Europe. Cities and farmland will be scattered across the land inter-connected by roads. There will be many different nations controlling territory on the map initially, but this will quickly change as nations vie for control over land and resources. Rome & Constantinople: Even though the Roman Empire has collapsed, Rome in the west and Constantinople in the east will act as the centre of power in each sphere. As the game progresses, their respective power will decrease till finally they are either absorbed by another nation or they become a minor nation. Islam & Pagans: At the games start, Islam will be a small pocket in a far corner of the map. However, via diminishing bonuses Islam will quickly spread from its initial location. Islam will act as a counter against the other religions, being Roman, Orthodox and Pagan. At the games start, a number of tribal states will begin as Pagan religion. These represent the “barbarian Eastern Europe” which was present at the beginning of the time period. Paganism will act as a counter against the other religions, being Roman, Orthodox and Islam. Playing the Game: A Single Player Game: After the player starts the game, an introduction movie will play. After the movie the main menu is displayed with a number of options. Selecting Single Player will take you to the setup screen. On this screen you select map configuration (sea level, map size, Europe/Random/Load map), the nation you wish to play and enter your leader name. After accepting these values the game (depending on map choices) will either load the default Europe map, load a custom map or generate a random map. This ends the setup phase. Once the setup is complete the main view is shown on-screen. This view is mostly made up of a detailed view of the map. The player can zoom in or out of the map to get a closer view or an overview of the lands. The view begins focused on the player’s capital. The player begins with 1-3 towns/cities and a range of units. Above the map view is the control panel. From here the player can enter any of the game’s screens, including diplomacy, economics, or military. These screens are linked to function keys as well for ease of access. The main menu button is also contained on the control panel, and it is consistent for every screen in-game. When the player wishes to save their game, or load a previously saved game, or even change game options they access the main menu. At the bottom of the screen are the information panels. One information panel has the minimap of the world, another panel has action buttons for what is currently selected or generic action buttons such as “build” and “govern”, and the third panel holds information about the currently selected object. If nothing is selected then this panel holds general information about the player’s nation. To begin with, the player must make a few decisions regarding what they will research first and what will be built in the towns/cities of their nation. The player then clicks on any units they wish to move and then right clicks on the target tile. The unit will move towards the tile to the extent of their movement points. Once moved to its maximum the unit ends its turn and another unit with movement points remaining is selected for the player. If the player doesn’t want to move a unit they fortify the unit which will take the unit out of this cycle of move-next unit-move. Once the player has finished their turn they click on the end turn button. At this point all of the other nations in the game perform their turn. And so the game progresses. Eventually, the player will finish researching a technology. Once complete a popup window will appear asking the player what to research next. If the technology has an accompanying invention then the player is able to select an amount of gold per turn to spend on trying to complete the invention. The length of time for the invention to complete is determined by the amount of gold per turn the player spends on the invention. At any one time the player can research one technology and multiple inventions. In this way a player can concentrate on inventions that will benefit them and ignore the ones that hold no benefit to them. For example a land-locked nation can ignore naval inventions but concentrate on land inventions. Once enough wood and stone is stockpiled the player can begin building infrastructure in their nation. By clicking on the “Build” action button a selection of choices depending on technology level will be presented. The player simple clicks on the building they want to build and then click on the location of the map to build it. Some buildings will rely on a resource to be build able such as an iron mine, but others can be built anywhere on land such as a farm. The two resources gatherers that allow building are sawmill and quarry. These two buildings will produce the timber and stone required to build all other buildings in the game. Some of the bigger buildings, especially civil buildings for cities such as a library, will also require an amount of gold to build. At this point the player should be collecting the essential resources to survive and have the basic infrastructure built. They will have researched a couple of technologies and maybe an invention or two. The player should now concentrate on diplomacy and trade. By using diplomacy the player can befriend other nations and form trade agreements with them. This will allow for the import and export of goods to expand the player’s economy. Once the player is making weapons from steel, and has a positive cash flow it is time to build up the army. Whilst it is possible to win peacefully in Empires! a weak nation militarily will be a target for other nations. Even a defensive army is essential to survive. Once the army has been expanded the player then makes a critical choice. Do they try to expand via conquest or diplomacy? If the player chooses to expand by conquest they use their nation’s army to invade another nation. The player must defeat the armies of the opposing nation and occupy all of the cities of the nation. The nation will consequently surrender all of its lands to the player. Any army remaining of the surrendering nation disbands. During war the player is able to order their armies to pillage and burn improvements made to the land. This includes houses. If the player faces a stronger enemy than anticipated the player can pillage and burn the enemy’s improvements to destroy their economy. This can help a further war later down the track as the enemy has had to rebuild their infrastructure instead of building up their army. The player is able to conquer any other nation in the game, including Rome, Constantinople, the barbarian nations or Islamic nations. However, every declaration of war will result in a counter affect on your diplomatic relations with other nations. An overly aggressive nation risks turning the rest of the world against them. If however the player chooses to expand via diplomacy, then various diplomatic options are available to help make friends with other nations. As well as the before mentioned trade agreement, the player can arrange a Royal Wedding (only one for each other nation), help them in their own wars with other nations, guarantee their sovereignty and let them be a vassal to you. Once a nation becomes the player’s vassal the player can control the vassal’s armies. The player also receives 25% of the vassal’s resources and gold as tithe. If a player has had a vassal for a long time, and relations are still very high, the vassal may agree to swear fealty. At this point the vassal gives all land, units and possessions to the player. This is how the player expands via diplomacy. This may be a harder path to take, but the player is able to maintain high diplomatic relations with other nations, and there is no impact on the player’s economy. Eventually over many turns the player is able to expand by conquering some nations and diplomatically other nations. The players economy will become stronger and technology will progress with new inventions improving society. At some point the player may be offered a minor victory. This is where the player has reached a victory criteria in one area of the game. It is the player’s choice whether they take the victory or play on for a major victory. If the player then plays on and becomes strong in all areas of the game, then they will be voted as a Great Power at the end of the game. If the player is the strongest remaining Great Power the player will achieve the ultimate victory in Empires! and go down forever in the annals of history. [Edited by - Dale on November 2, 2006 4:59:19 PM]
  9. Steven, Thanks for the suggestion but I've taken a different route. :) Basically, to ensure an adequent number of animations are occuring onscreen (offscreen ones not counted) each tile stores it's own x,y loc of the top-left corner. This means I can pick a random onscreen pixel and animate the tile under it. So for my mousemap I'm just refering to those co-ords to find the rough tile it's in before fine tuning. Yeah, means I take a little bit extra memory, but it works. That's all I wanted. :) Dale
  10. Hi all. :) I'm writing a iso-tile engine and have come up against a slight problem. I can easily get the screen->map location on a flat map, but am stumped on how to get it when you add "height". I know I could use MouseMaps (like an article on GD suggests), but I want the engine generic enough that it can accept any tile rise amounts. IE: one terrain set can have a tile rise of 10 pixels, but the next 20 pixels. So this creates the need to use pure fun algebra. ;) Firstly, the variables I'm using: Db.THeight Db.TWidth // The terrain picture height & width (eg 64x64) Db.TOffset // The terrain picture height where the graphic starts (eg 32 in a 2:1 iso-tile) Db.TRise // The amount of pixels "up" the next height level is (eg 15) Db.xCamera Db.yCamera // The flat-map tile at the centre of the screen (offset so the middle of the tile is 512x384 [1024x768 screen size]) Db.Mouse.xMouse Db.Mouse.yMouse // The x,y mouse cursor screen loc Db.Mouse.xMapLoc Db.Mouse.yMapLoc // The tile location of the mouse cursor Here's the current code for determining the screen->map loc of the cursor: DB::GetMouseMapLoc() { int x, y, xmove, ymove; x = Mouse.xMouse; y = Mouse.yMouse; xmove = 0; ymove = 1; // Offset to align with camera x += (TWidth / 2); y += (TOffset / 2); // Left of centre if(x < 512) { while(x < 512) { xmove++; ymove++; x += TWidth; } // Right of centre } else { while(x >= (512 + TWidth)) { xmove--; ymove--; x -= TWidth; } } // Up from centre if(y < 384) { while(y < 384) { xmove++; ymove--; y += TOffset; } // Down from centre } else { while(y >= (384 + TOffset)) { xmove--; ymove++; y -= TOffset; } } // Assign rough MapLoc Mouse.xMapLoc = (xCamera - xmove); Mouse.yMapLoc = (yCamera - ymove); // Fine-tuning of MapLoc x -= 512; y -= 384; if(x < (TWidth / 2) && y < (TOffset / 2)) { if(x < ((TWidth / 2) - (2 * y))) Mouse.xMapLoc--; } else if(x > (TWidth / 2) && y < (TOffset / 2)) { if((x - (TWidth / 2)) > ((y + 1) * 2)) Mouse.yMapLoc++; } else if(x < (TWidth / 2) && y > (TOffset / 2)) { if(x < (((y - (TOffset / 2)) + 1) * 2)) Mouse.yMapLoc--; } else if(x > (TWidth / 2) && y > (TOffset / 2)) { if((x - (TWidth / 2)) > ((TWidth / 2) - (2 * (y - (TOffset / 2))))) Mouse.xMapLoc++; } return(TRUE); } So this function happily puts the flat-map x,y co-ords into xMapLoc,yMapLoc. But when viewing on screen if the tile is at height 10 (150 pixels "up" from that spot when TRise = 15) then it's the wrong values. So if anyone out there can help I'd greatly appreciate it. :) Dale
  11. Hi, thought I'd add my comments. :) I've seen a method where one pixel colour can determine height, wetness and features (buildings, trees, roads, etc). Basically, you have three channels: Red, Green Blue. Red = height (256 different heights) Green = wetness (256 levels of wetness) Blue = features (256 buildings/trees/roads etc) After loading your bitmap read off the pixels and with post-calculation you can form your map. For example: - Height: 1. Height 0-20 = sea level (then you can have shallow and deep seas) 2. Height 100-200 = "hilly" terrain (obviously assign a hill graphic here) 3. Height 200+ = "mountainous" terrain (you could say over 225 = "perma-snow") - Wetness: 1. Wetness 0-50 = "dry" or desert conditions. 2. Wetness 50-150 = "normal" conditions. 3. Wetness 150-200 = "wet" conditions (jungle, marsh, whatever). 4. Wetness 200+ = "river" conditions (225+ = large river). - Features: This is as simple as assigning an element to each level (256 max). Zero is empty. In this way, say you have a tile with RGB(152, 185, 204). This means the tile is height 152 (average hilly height) reasonably wet with 185 (rainforest maybe?) with element 204 on the tile which could translate to a gold deposit. Dale
  12. Alex, Thanks for the reply. Yes, you're correct in saying the map is pre-made. Being a specific area with a specific history, the map goes hand-in-hand with being pre-made. I'll put your suggestion to the artist and see if I can convince him. Thanks Dale
  13. Hi all. I'm the GUI programmer for an up 'n coming medieval strategy game. The GUI is being created on DirectDraw7 surfaces, with 24-bit bitmaps. The app does not use palettes. The main screen is composed of an overview map of the entire "world", with an overlayed control panel. The designer has requested if it's possible to have the borders between the 5 kingdoms highlighted on the province borders of the map. For a screenshot in the game (and what I'm talking about), just point that browser of yours to http://www.pyromaniaks.net/candlebre/IMG/jpg/overviewmap.jpg The borders are the ones around each province, and if you control a number of provinces, the designers would like the border around the whole of your kingdom. Did I explain it right? Now call me stupid here, but I've searched and searched for a solution, but for the life of me can't find one. I've discounted setting each pixel to the border colour, cuz that's a very slow method. One thing I thought was, have the overview map created in it's own time off screen, and called whenever needed. Then I'm not slowing the screen down. But I wanted to see if there's an easy way. Is there anyone that can help me in my dilema? Thanks Dale