Ticket #4055: l10nManual.diff
File l10nManual.diff, 41.4 KB (added by , 8 years ago) |
---|
-
binaries/data/mods/public/gui/common/functions_utility.js
41 41 return files; 42 42 } 43 43 44 // Run through a "Content" list and parse elements for formatting and translation 45 function parseTextHelper(list) 46 { 47 let result = ""; 48 49 for (let object of list) 50 { 51 if (object.LangName) 52 result += "[font=\"sans-bold-stroke-14\"]" + escapeText(object.LangName) + "\n"; 53 54 if (object.Title) 55 result += "[font=\"sans-bold-stroke-14\"]" + escapeText(translate(object.Title)) + "\n"; 56 57 if (object.Subtitle) 58 result += "[font=\"sans-bold-14\"]" + escapeText(translate(object.Subtitle)) + "\n"; 59 60 if (object.itemText) 61 result += "[font=\"sans-bold-14\"]" + translate("• "); 62 if (object.namedItem) 63 result += "[font=\"sans-14\"]" + sprintf("%(namedItem)s — ", { "namedItem": escapeText(translate(object.namedItem)) }); 64 if (object.itemText) 65 result += "[font=\"sans-14\"]" + escapeText(translate(object.itemText)) + "\n"; 66 67 if (object.hotkey) 68 result += "[font=\"sans-14\"]" + sprintf("%(hotkey)s: ", { "hotkey": escapeText(translateWithContext("hotkey", object.hotkey)) }); 69 70 if (object.text) 71 result += "[font=\"sans-14\"]" + escapeText(translate(object.text)) + "\n"; 72 73 if (object.newline) 74 result += "\n"; 75 76 if (object.List) 77 { 78 for (let element of object.List) 79 { 80 if (element.nick && element.name) 81 result += "[font=\"sans-14\"]" + escapeText(sprintf(translate("%(nick)s - %(name)s"), { "nick": element.nick, "name": element.name })) + "\n"; 82 else if (element.nick) 83 result += "[font=\"sans-14\"]" + escapeText(element.nick) + "\n"; 84 else if (element.name) 85 result += "[font=\"sans-14\"]" + escapeText(element.name) + "\n"; 86 } 87 result += "\n"; 88 } 89 90 if (object.Content) 91 result += "\n" + parseTextHelper(object.Content) + "\n"; 92 } 93 94 return result; 95 } 96 44 97 // A sorting function for arrays of objects with 'name' properties, ignoring case 45 98 function sortNameIgnoreCase(x, y) 46 99 { -
binaries/data/mods/public/gui/credits/credits.js
15 15 continue; 16 16 } 17 17 g_ButtonNames[name] = json.Title || name; 18 g_PanelTexts[name] = parse Helper(json.Content);18 g_PanelTexts[name] = parseTextHelper(json.Content); 19 19 } 20 20 21 21 placeButtons(); … … 45 45 } 46 46 } 47 47 48 // Run through a "Content" list and parse elements for formatting and translation49 function parseHelper(list)50 {51 let result = "";52 53 for (let object of list)54 {55 if (object.LangName)56 result += "[font=\"sans-bold-stroke-14\"]" + object.LangName + "\n";57 58 if (object.Title)59 result += "[font=\"sans-bold-stroke-14\"]" + translate(object.Title) + "\n";60 61 if (object.Subtitle)62 result += "[font=\"sans-bold-14\"]" + translate(object.Subtitle) + "\n";63 64 if (object.List)65 {66 for (let element of object.List)67 {68 if (element.nick && element.name)69 result += "[font=\"sans-14\"]" + sprintf(translate("%(nick)s - %(name)s"), { "nick": element.nick, "name": element.name }) + "\n";70 else if (element.nick)71 result += "[font=\"sans-14\"]" + element.nick + "\n";72 else if (element.name)73 result += "[font=\"sans-14\"]" + element.name + "\n";74 }75 result += "\n";76 }77 78 if (object.Content)79 result += "\n" + parseHelper(object.Content) + "\n";80 }81 82 return result;83 }84 85 48 function selectPanel(i) 86 49 { 87 50 if (g_ActivePanel != -1) -
binaries/data/mods/public/gui/credits/credits.xml
8 8 9 9 <objects> 10 10 <script file="gui/common/functions_global_object.js"/> 11 <script file="gui/common/functions_utility.js"/> 11 12 <script directory="gui/credits/"/> 12 13 13 14 <!-- Add a translucent black background to fade out the menu page --> -
binaries/data/mods/public/gui/lobby/Terms_of_Service.json
1 { 2 "Title": "0 A.D. Empires Ascendant Multiplayer Lobby Terms of Service", 3 "Content": [ 4 { "text": "Definitions:" }, 5 { "itemText": "The \"service\" is the 0 A.D. Empires Ascendant Multiplayer Lobby provided by Wildfire Games (WFG)." }, 6 { "itemText": "\"You\" are the user of the service." }, 7 { "itemText": "\"We\" are the collective of all Wildfire Games (WFG) team members." }, 8 { "itemText": "\"Rating\" refers to the process of analyzing various user statistics for the purpose of generating a single comprehensive score." }, 9 { "itemText": "\"Moderate\" refers to the process of enforcing usage policies." }, 10 { "newline": true }, 11 { "item": "By using the service you agree to:" }, 12 { "item": "1. Follow all usage policies." }, 13 { "item": "2. Allow user identifiable statistics to be gathered for the purposes of rating, user profiles, and community statistics." }, 14 { "item": "We also reserve the right to:" }, 15 { "item": "1. Moderate the service." }, 16 { "item": "2. Appoint others to moderate the service." }, 17 { "item": "3. Discontinue or interrupt service at any time with or without prior announcement." }, 18 { "item": "4. Change the service at any time with or without announcement." }, 19 { "item": "5. Delete any and all service data at any time with or without announcement." }, 20 { "item": "6. Collect any or all user identifiable statistics at any time without consent for:" }, 21 { "item": "a. Private analysis by Wildfire Games (WFG) team members and their affiliates." }, 22 { "item": "b. Anonymized public release by Wildfire Games (WFG) team members." }, 23 { "item": "7. Change this document in any way; at any time; on the condition that the user of the service is given adequate notice of the change (the definition of adequate notice will be determined at the time by a panel of Wildfire Games (WFG) team members)." } 24 ] 25 } -
binaries/data/mods/public/gui/lobby/Terms_of_Service.txt
1 0 A.D. Empires Ascendant Multiplayer Lobby Terms of Service2 Definitions:3 * The "service" is the 0 A.D. Empires Ascendant Multiplayer Lobby provided by Wildfire Games (WFG).4 * "You" are the user of the service.5 * "We" are the collective of all Wildfire Games (WFG) team members.6 * "Rating" refers to the process of analyzing various user statistics for the purpose of generating a single comprehensive score.7 * "Moderate" refers to the process of enforcing usage policies.8 By using the service you agree to:9 1. Follow all usage policies.10 2. Allow user identifiable statistics to be gathered for the purposes of rating, user profiles, and community statistics.11 We also reserve the right to:12 1. Moderate the service.13 2. Appoint others to moderate the service.14 3. Discontinue or interrupt service at any time with or without prior announcement.15 4. Change the service at any time with or without announcement.16 5. Delete any and all service data at any time with or without announcement.17 6. Collect any or all user identifiable statistics at any time without consent for:18 a. Private analysis by Wildfire Games (WFG) team members and their affiliates.19 b. Anonymized public release by Wildfire Games (WFG) team members.20 7. Change this document in any way; at any time; on the condition that the user of the service is given adequate notice of the change (the definition of adequate notice will be determined at the time by a panel of Wildfire Games (WFG) team members). -
binaries/data/mods/public/gui/lobby/Terms_of_Use.json
1 { 2 "Title": "0 A.D. Empires Ascendant Multiplayer Lobby Terms of Use", 3 "Content": [ 4 { "text": "Definitions:" }, 5 { "itemText": "The \"service\" is the 0 A.D. Empires Ascendant Multiplayer Lobby provided by Wildfire Games (WFG)." }, 6 { "itemText": "\"You\" are the user of the service." }, 7 { "itemText": "\"Impersonate\" refers to the action in which you attempt to exploit another's identity for your own purposes." }, 8 { "itemText": "\"Spam\" refers to irrelevant or inappropriate messages sent to a large number of recipients." }, 9 { "itemText": "\"Rating\" refers to the per-user comprehensive score." }, 10 { "itemText": "\"Ranked games\" refers to games in which rating changing statistics are tracked." }, 11 { "text": "You agree to:" }, 12 { "text": "1. Only create one account per unique user on the service unless authorized by a Wildfire Games (WFG) team member." }, 13 { "text": "2. Not post profane statements, rude humor, pornographic content, or discriminatory comments on the service." }, 14 { "text": "3. Not purposefully demean the worth of others using the service." }, 15 { "text": "4. Not use the service to promote specific goods, services, or products." }, 16 { "text": "5. Not impersonate other users of the service." }, 17 { "text": "6. Not spam the service." }, 18 { "text": "7. Not attempt to artificially adjust any user of the service's rating or any of the statistics which impact it. (Examples of this are, but are not limited to: cheating in ranked games, reverse engineering the service, and taking advantage of other users of the service.)" }, 19 { "text": "8. Allow yourself to be removed from the service if at any time a moderator determines your behavior is not consistent with these rules." }, 20 { "text": "We also reserve the right to:" }, 21 { "text": "1. Change this document in any way; at any time; on the condition that the user of the service is given adequate notice of the change (the definition of adequate notice will be determined at the time by a panel of Wildfire Games (WFG) team members)." } 22 ] 23 } -
binaries/data/mods/public/gui/lobby/Terms_of_Use.txt
1 0 A.D. Empires Ascendant Multiplayer Lobby Terms of Use2 Definitions:3 * The "service" is the 0 A.D. Empires Ascendant Multiplayer Lobby provided by Wildfire Games (WFG).4 * "You" are the user of the service.5 * "Impersonate" refers to the action in which you attempt to exploit another's identity for your own purposes.6 * "Spam" refers to irrelevant or inappropriate messages sent to a large number of recipients.7 * "Rating" refers to the per-user comprehensive score.8 * "Ranked games" refers to games in which rating changing statistics are tracked.9 You agree to:10 1. Only create one account per unique user on the service unless authorized by a Wildfire Games (WFG) team member.11 2. Not post profane statements, rude humor, pornographic content, or discriminatory comments on the service.12 3. Not purposefully demean the worth of others using the service.13 4. Not use the service to promote specific goods, services, or products.14 5. Not impersonate other users of the service.15 6. Not spam the service.16 7. Not attempt to artificially adjust any user of the service's rating or any of the statistics which impact it. (Examples of this are, but are not limited to: cheating in ranked games, reverse engineering the service, and taking advantage of other users of the service.)17 8. Allow yourself to be removed from the service if at any time a moderator determines your behavior is not consistent with these rules.18 We also reserve the right to:19 1. Change this document in any way; at any time; on the condition that the user of the service is given adequate notice of the change (the definition of adequate notice will be determined at the time by a panel of Wildfire Games (WFG) team members). -
binaries/data/mods/public/gui/manual/intro.txt
1 [font="sans-bold-18"]0 A.D. in-game manual2 [font="sans-14"]3 Thank you for installing 0 A.D.! This page will give a brief overview of the features available in this incomplete, under-development, alpha version of the game.4 5 [font="sans-bold-16"]Graphics settings6 [font="sans-14"]You can switch between fullscreen and windowed mode by pressing Alt + Enter. In windowed mode, you can resize the window. If the game runs too slowly, you can change some settings in the configuration file: look for binaries/data/config/default.cfg in the location where the game is installed, which gives instructions for editing, and try disabling the "fancywater" and "shadows" options.7 8 [font="sans-bold-16"]Playing the game9 [font="sans-14"]The controls and gameplay should be familiar to players of traditional RTS games. There are currently a lot of missing features and poorly-balanced stats – you will probably have to wait until a beta release for it to work well.10 11 Basic controls:12 • Left-click to select units.13 • Left-click-and-drag to select groups of units.14 • Right-click to order units to the target.15 • Arrow keys or WASD keys to move the camera.16 • Ctrl + arrow keys, or shift + mouse wheel, to rotate the camera.17 • Mouse wheel, or "+" and "-" keys, to zoom.18 19 [font="sans-bold-16"]Modes20 [font="sans-14"]The main menu gives access to two game modes:21 22 • [font="sans-bold-14"]Single-player[font="sans-14"] — play a sandbox game or against one or more AI opponents. The AI/AIs are under development and may not always be up to date on the new features, but you can test playing the game against an actual opponent if you aren't able to play with a human.23 24 • [font="sans-bold-14"]Multiplayer[font="sans-14"] — play against human opponents over the internet.25 26 To set up a multiplayer game, one player must select the "Host game" option. The game uses UDP port 20595, so the host must configure their NAT/firewall/etc to allow this. Other players can then select "Join game" and enter the host's IP address.27 28 [font="sans-bold-16"]Game setup29 [font="sans-14"]In a multiplayer game, only the host can alter the game setup options.30 31 First, select what type of map you want to play:32 • [font="sans-bold-14"]Random map[font="sans-14"] — A map created automatically from a script33 • [font="sans-bold-14"]Scenario map[font="sans-14"] — A map created by map designers and with fixed civilisations34 • [font="sans-bold-14"]Skirmish map[font="sans-14"] — A map created by map designers but where the civilisations can be chosen35 36 Then the maps can be futher filtered. The default maps are generally playable maps. Naval maps are maps where not all opponents can be reached over land and demo maps are maps used for testing purposes (generally not useful to play on). The "All Maps" filter shows all maps together in one list.37 38 Finally change the settings. For random maps this includes the number of players, the size of a map, etc. For scenarios you can only select who controls which player (decides where you start on the map etc). The options are either a human player, an AI or no player at all (the opponent will just be idle).39 40 When you are ready to start, click the "Start game" button.41 42 [font="sans-bold-16"]Hotkeys:43 [font="sans-bold-14"]Global44 [font="sans-14"]Alt + F4: Close the game, without confirmation45 Alt + Enter: Toggle between fullscreen and windowed46 ~ or F9: Show/hide console47 Alt + F: Show/hide frame counter (FPS)48 F11: Enable/disable real-time profiler (toggles through the displays of information)49 Shift + F11: Save current profiler data to "logs/profile.txt"50 F2: Take screenshot (in .png format, location is displayed in the top left of the GUI after the file has been saved, and can also be seen in the console/logs if you miss it there)51 Shift + F2: Take huge screenshot (6400px*4800px, in .bmp format, location is displayed in the top left of the GUI after the file has been saved, and can also be seen in the console/logs if you miss it there)52 53 [font="sans-bold-14"]In Game54 [font="sans-14"]Double Left Click \[on unit]: Select all of your units of the same kind on the screen (even if they're different ranks)55 Triple Left Click \[on unit]: Select all of your units of the same kind and the same rank on the screen56 Alt + Double Left Click \[on unit]: Select all your units of the same kind on the entire map (even if they have different ranks)57 Alt + Triple Left Click \[on unit]: Select all your units of the same kind and rank on the entire map58 Shift + F5: Quicksave59 Shift + F8: Quickload60 F10: Open/close menu61 F12: Show/hide time elapsed counter62 ESC: Close all dialogs (chat, menu) or clear selected units63 Enter/return: Open/send chat64 T: Send team chat65 Pause: Pause/resume the game66 Delete: Delete currently selected units/buildings67 Shift + Delete: Delete currently selected units/buildings without confirmation68 ,: Select idle fighters69 .: Select idle workers (including citizen soldiers)70 H: Stop (halt) the currently selected units.71 Ctrl + 1 (and so on up to Ctrl + 0): Create control group 1 (to 0) from the selected units/buildings72 1 (and so on up to 0): Select the units/buildings in control group 1 (to 0)73 Shift + 1 (to 0): Add control group 1 (to 0) to the selected units/buildings74 Ctrl + F5 (and so on up to F8): Mark the current camera position, for jumping back to later.75 F5, F6, F7, and F8: Move the camera to a marked position. Jump back to the last location if the camera is already over the marked position.76 Z, X, C, V, B, N, M: With training buildings selected. Add the 1st, 2nd, ... unit shown to the training queue for all the selected buildings.77 PageUp with units selected: highlights the units/buildings guarded by the selection.78 PageDown with units/buildings selected: highlights the units guarding the selection.79 Tab: See all status bars (which would also show the building progress)80 81 [font="sans-bold-14"]Modify mouse action82 [font="sans-14"]Ctrl + Right Click on building: Garrison83 Shift + Right Click: Queue the move/build/gather/etc order84 Shift + Left click when training unit/s: Add units in batches of five85 Shift + Left Click or Left Drag over unit on map: Add unit to selection86 Ctrl + Left Click or Left Drag over unit on map: Remove unit from selection87 Alt + Left Drag over units on map: Only select military units88 I + Left Drag over units on map: Only select idle units89 Ctrl + Left Click on unit/group icon with multiple units selected: Deselect90 Right Click with a building/buildings selected: sets a rally point for units created/ungarrisoned from that building.91 Ctrl + Right Click with units selected:92 - If the cursor is over an allied structure: Garrison93 - If the cursor is over a non-allied unit or building: Attack (instead of capture or gather)94 - Otherwise: Attack move (by default all enemy units and structures along the way are targeted, use Ctrl + Q + Right Click to target only units).95 96 [font="sans-bold-14"]Overlays97 [font="sans-14"]Alt + G: Hide/show the GUI98 Alt + D: Show/hide developer overlay (with developer options)99 Alt + W: Toggle wireframe mode (press once to get wireframes overlaid over the textured models, twice to get just the wireframes colored by the textures, thrice to get back to normal textured mode)100 Alt + S: Toggle unit silhouettes (might give a small performance boost)101 Alt + Z: Toggle sky102 103 [font="sans-bold-14"]Camera manipulation104 [font="sans-14"]W or \[up]: Pan screen up105 S or \[down]: Pan screen down106 A or \[left]: Pan screen left107 D or \[right]: Pan screen right108 Ctrl + W or \[up]: Rotate camera to look upward109 Ctrl + S or \[down]: Rotate camera to look downward110 Ctrl + A or \[left]: Rotate camera clockwise around terrain111 Ctrl + D or \[right]: Rotate camera anticlockwise around terrain112 Q: Rotate camera clockwise around terrain113 E: Rotate camera anticlockwise around terrain114 Shift + Mouse Wheel Rotate Up: Rotate camera clockwise around terrain115 Shift + Mouse Wheel Rotate Down: Rotate camera anticlockwise around terrain116 F: Follow the selected unit (move the camera to stop the camera from following the unit/s)117 R: Reset camera zoom/orientation118 +: Zoom in (keep pressed for continuous zoom)119 -: Zoom out (keep pressed for continuous zoom)120 Alt + W: Toggle through wireframe modes121 Middle Mouse Button or / (Forward Slash): Keep pressed and move the mouse to pan122 123 [font="sans-bold-14"]During Building Placement124 [font="sans-14"]\[: Rotate building 15 degrees counter-clockwise125 ]: Rotate building 15 degrees clockwise126 Left Drag: Rotate building using mouse (foundation will be placed on mouse release)127 128 [font="sans-bold-14"]When loading a saved game129 [font="sans-14"]Delete: delete the selected saved game asking confirmation130 Shift: do not ask confirmation when deleting a saved game -
binaries/data/mods/public/gui/manual/manual.js
Property changes on: binaries/data/mods/public/gui/manual/intro.txt ___________________________________________________________________ Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property
2 2 3 3 function init(data) 4 4 { 5 Engine.GetGUIObjectByName("mainText").caption = Engine.TranslateLines(Engine.ReadFile("gui/" + data.page + ".txt")); 5 let json = Engine.ReadJSONFile("gui/" + data.page + ".json"); 6 if (!json || !json.Content) 7 { 8 error("Could not load page" + data.page + "!"); 9 return; 10 } 11 let text = "" 12 if (json.Title) 13 text += "[font=\"sans-bold-18\"]" + escapeText(translate(json.Title)) + "\n"; 14 15 text += parseTextHelper(json.Content); 16 17 Engine.GetGUIObjectByName("mainText").caption = text; 18 6 19 if (data.callback) 7 20 hasCallback = true; 8 21 if (data.title) -
binaries/data/mods/public/gui/manual/manual.json
1 { 2 "Title": "0 A.D. in-game manual", 3 "Content": [ 4 { "newline": true }, 5 { "text": "Thank you for installing 0 A.D.! This page will give a brief overview of the features available in this incomplete, under-development, alpha version of the game." }, 6 { "newline": true }, 7 { 8 "Title": "Graphics settings", 9 "Content": [ 10 { "text": "You can switch between fullscreen and windowed mode by pressing Alt + Enter. In windowed mode, you can resize the window. If the game runs too slowly, you can change some settings in the configuration file: look for binaries/data/config/default.cfg in the location where the game is installed, which gives instructions for editing, and try disabling the \"fancywater\" and \"shadows\" options." } 11 ] 12 }, 13 { 14 "Title": "Playing the game", 15 "Content": [ 16 { "text": "The controls and gameplay should be familiar to players of traditional RTS games. There are currently a lot of missing features and poorly-balanced stats – you will probably have to wait until a beta release for it to work well." }, 17 "p", 18 { "newline": true }, 19 { "text": "Basic controls:" }, 20 { "itemText": "Left-click to select units." }, 21 { "itemText": "Left-click-and-drag to select groups of units." }, 22 { "itemText": "Right-click to order units to the target." }, 23 { "itemText": "Arrow keys or WASD keys to move the camera." }, 24 { "itemText": "Ctrl + arrow keys, or shift + mouse wheel, to rotate the camera." }, 25 { "itemText": "Mouse wheel, or \"+\" and \"-\" keys, to zoom." } 26 ] 27 }, 28 { 29 "Title": "Modes", 30 "Content": [ 31 { "text": "The main menu gives access to two game modes:" }, 32 { 33 "namedItem": "Single-player", 34 "itemText": "play a sandbox game or against one or more AI opponents. The AI/AIs are under development and may not always be up to date on the new features, but you can test playing the game against an actual opponent if you aren't able to play with a human." 35 }, 36 { 37 "namedItem": "Multiplayer", 38 "itemText": "play against human opponents over the internet." 39 }, 40 { "newline": true }, 41 { "text": "To set up a multiplayer game, one player must select the \"Host game\" option. The game uses UDP port 20595, so the host must configure their NAT/firewall/etc to allow this. Other players can then select \"Join game\" and enter the host's IP address." } 42 ] 43 }, 44 { 45 "Title": "Game setup", 46 "Content": [ 47 { "text": "In a multiplayer game, only the host can alter the game setup options." }, 48 { "newline": true }, 49 { "text": "First, select what type of map you want to play:" }, 50 { 51 "namedItem": "Random", 52 "itemText": "A map created automatically from a script" 53 }, 54 { 55 "namedItem": "Scenario map", 56 "itemText": "A map created by map designers and with fixed civilisations" 57 }, 58 { 59 "namedItem": "Skirmish map", 60 "itemText": "A map created by map designers but where the civilisations can be chosen" 61 }, 62 { "newline": true }, 63 { "text": "Then the maps can be futher filtered. The default maps are generally playable maps. Naval maps are maps where not all opponents can be reached over land and demo maps are maps used for testing purposes (generally not useful to play on). The \"All Maps\" filter shows all maps together in one list." }, 64 { "text": "Finally change the settings. For random maps this includes the number of players, the size of a map, etc. For scenarios you can only select who controls which player (decides where you start on the map etc). The options are either a human player, an AI or no player at all (the opponent will just be idle)." }, 65 { "text": "When you are ready to start, click the \"Start game\" button."} 66 ] 67 }, 68 { 69 "Title": "Hotkeys", 70 "Content": [ 71 { 72 "Subtitle": "Global", 73 "Content": [ 74 { "hotkey": "Alt + F4", "text": "Close the game, without confirmation" }, 75 { "hotkey": "Alt + Enter", "text": "Toggle between fullscreen and windowed" }, 76 { "hotkey": "~ or F9", "text": "Show/hide console" }, 77 { "hotkey": "Alt + F", "text": "Show/hide frame counter (FPS)" }, 78 { "hotkey": "F11", "text": "Enable/disable real-time profiler (toggles through the displays of information)" }, 79 { "hotkey": "Shift + F11", "text": "Save current profiler data to \"logs/profile.txt\"" }, 80 { "hotkey": "F2", "text": "Take screenshot (in .png format, location is displayed in the top left of the GUI after the file has been saved, and can also be seen in the console/logs if you miss it there)" }, 81 { "hotkey": "Shift + F2", "text": "Take huge screenshot (6400px*4800px, in .bmp format, location is displayed in the top left of the GUI after the file has been saved, and can also be seen in the console/logs if you miss it there)" } 82 ] 83 }, 84 { 85 "Subtitle": "In Game", 86 "Content": [ 87 { "hotkey": "Double Left Click [on unit]", "text": "Select all of your units of the same kind on the screen (even if they're different ranks)" }, 88 { "hotkey": "Triple Left Click [on unit]", "text": "Select all of your units of the same kind and the same rank on the screen" }, 89 { "hotkey": "Alt + Double Left Click [on unit]", "text": "Select all your units of the same kind on the entire map (even if they have different ranks)" }, 90 { "hotkey": "Alt + Triple Left Click [on unit]", "text": "Select all your units of the same kind and rank on the entire map" }, 91 { "hotkey": "Shift + F5", "text": "Quicksave" }, 92 { "hotkey": "Shift + F8", "text": "Quickload" }, 93 { "hotkey": "F10", "text": "Open/close menu" }, 94 { "hotkey": "F12", "text": "Show/hide time elapsed counter" }, 95 { "hotkey": "ESC", "text": "Close all dialogs (chat, menu) or clear selected units" }, 96 { "hotkey": "Enter/return", "text": "Open/send chat" }, 97 { "hotkey": "T", "text": "Send team chat" }, 98 { "hotkey": "Pause", "text": "Pause/resume the game" }, 99 { "hotkey": "Delete", "text": "Delete currently selected units/buildings" }, 100 { "hotkey": "Shift + Delete", "text": "Delete currently selected units/buildings without confirmation" }, 101 { "hotkey": ",", "text": "Select idle fighters" }, 102 { "hotkey": ".", "text": "Select idle workers (including citizen soldiers)" }, 103 { "hotkey": "H", "text": "Stop (halt) the currently selected units." }, 104 { "hotkey": "Ctrl + 1 (and so on up to Ctrl + 0)", "text": "Create control group 1 (to 0) from the selected units/buildings" }, 105 { "hotkey": "1 (and so on up to 0)", "text": "Select the units/buildings in control group 1 (to 0)" }, 106 { "hotkey": "Shift + 1 (to 0)", "text": "Add control group 1 (to 0) to the selected units/buildings" }, 107 { "hotkey": "Ctrl + F5 (and so on up to F8)", "text": "Mark the current camera position, for jumping back to later." }, 108 { "hotkey": "F5, F6, F7, and F8", "text": "Move the camera to a marked position. Jump back to the last location if the camera is already over the marked position." }, 109 { "hotkey": "Z, X, C, V, B, N, M", "text": "With training buildings selected. Add the 1st, 2nd, ... unit shown to the training queue for all the selected buildings." }, 110 { "hotkey": "PageUp with units selected", "text": "highlights the units/buildings guarded by the selection." }, 111 { "hotkey": "PageDown with units/buildings selected", "text": "highlights the units guarding the selection." }, 112 { "hotkey": "Tab", "text": "See all status bars (which would also show the building progress)" } 113 ] 114 }, 115 { 116 "Subtitle": "Modify mouse action", 117 "Content": [ 118 { "hotkey": "Ctrl + Right Click on building", "text": "Garrison" }, 119 { "hotkey": "Shift + Right Click", "text": "Queue the move/build/gather/etc order" }, 120 { "hotkey": "Shift + Left click when training unit/s", "text": "Add units in batches of five" }, 121 { "hotkey": "Shift + Left Click or Left Drag over unit on map", "text": "Add unit to selection" }, 122 { "hotkey": "Ctrl + Left Click or Left Drag over unit on map", "text": "Remove unit from selection" }, 123 { "hotkey": "Alt + Left Drag over units on map", "text": "Only select military units" }, 124 { "hotkey": "I + Left Drag over units on map", "text": "Only select idle units" }, 125 { "hotkey": "Ctrl + Left Click on unit/group icon with multiple units selected", "text": "Deselect" }, 126 { "hotkey": "Right Click with a building/buildings selected", "text": "sets a rally point for units created/ungarrisoned from that building." }, 127 { 128 "hotkey": "Ctrl + Right Click with units selected", 129 "Content": [ 130 { "text": "- If the cursor is over an allied structure: Garrison" }, 131 { "text": "- If the cursor is over a non-allied unit or building: Attack (instead of capture or gather)" }, 132 { "text": "- Otherwise: Attack move (by default all enemy units and structures along the way are targeted, use Ctrl + Q + Right Click to target only units)." } 133 ] 134 } 135 ] 136 }, 137 { 138 "Subtitle": "Overlays", 139 "Content": [ 140 { "hotkey": "Alt + G", "text": "Hide/show the GUI" }, 141 { "hotkey": "Alt + D", "text": "Show/hide developer overlay (with developer options)" }, 142 { "hotkey": "Alt + W", "text": "Toggle wireframe mode (press once to get wireframes overlaid over the textured models, twice to get just the wireframes colored by the textures, thrice to get back to normal textured mode)" }, 143 { "hotkey": "Alt + S", "text": "Toggle unit silhouettes (might give a small performance boost)" }, 144 { "hotkey": "Alt + Z", "text": "Toggle sky" } 145 ] 146 }, 147 { 148 "Subtitle": "Camera manipulation", 149 "Content": [ 150 { "hotkey": "W or [up]", "text": "Pan screen up" }, 151 { "hotkey": "S or [down]", "text": "Pan screen down" }, 152 { "hotkey": "A or [left]", "text": "Pan screen left" }, 153 { "hotkey": "D or [right]", "text": "Pan screen right" }, 154 { "hotkey": "Ctrl + W or [up]", "text": "Rotate camera to look upward" }, 155 { "hotkey": "Ctrl + S or [down]", "text": "Rotate camera to look downward" }, 156 { "hotkey": "Ctrl + A or [left]", "text": "Rotate camera clockwise around terrain" }, 157 { "hotkey": "Ctrl + D or [right]", "text": "Rotate camera anticlockwise around terrain" }, 158 { "hotkey": "Q", "text": "Rotate camera clockwise around terrain" }, 159 { "hotkey": "E", "text": "Rotate camera anticlockwise around terrain" }, 160 { "hotkey": "Shift + Mouse Wheel Rotate Up", "text": "Rotate camera clockwise around terrain" }, 161 { "hotkey": "Shift + Mouse Wheel Rotate Down", "text": "Rotate camera anticlockwise around terrain" }, 162 { "hotkey": "F", "text": "Follow the selected unit (move the camera to stop the camera from following the unit/s)" }, 163 { "hotkey": "R", "text": "Reset camera zoom/orientation" }, 164 { "hotkey": "+", "text": "Zoom in (keep pressed for continuous zoom)" }, 165 { "hotkey": "-", "text": "Zoom out (keep pressed for continuous zoom)" }, 166 { "hotkey": "Alt + W", "text": "Toggle through wireframe modes" }, 167 { "hotkey": "Middle Mouse Button or / (Forward Slash)", "text": "Keep pressed and move the mouse to pan" } 168 ] 169 }, 170 { 171 "Subtitle": "During Building Placement", 172 "Content": [ 173 { "hotkey": "[", "text": "Rotate building 15 degrees counter-clockwise" }, 174 { "hotkey": "]", "text": "Rotate building 15 degrees clockwise" }, 175 { "hotkey": "Left Drag", "text": "Rotate building using mouse (foundation will be placed on mouse release)"} 176 ] 177 }, 178 { 179 "Subtitle": "When loading a saved game", 180 "Content": [ 181 { "hotkey": "Delete", "text": "delete the selected saved game asking confirmation" }, 182 { "hotkey": "Shift", "text": "do not ask confirmation when deleting a saved game" } 183 ] 184 } 185 ] 186 } 187 ] 188 } 189 190 191 192 193 194 -
binaries/data/mods/public/gui/manual/manual.xml
2 2 3 3 <objects> 4 4 <script file="gui/common/functions_global_object.js"/> 5 <script file="gui/common/functions_utility.js"/> 5 6 <script file="gui/manual/manual.js"/> 6 7 7 8 <!-- Add a translucent black background to fade out the menu page --> -
binaries/data/mods/public/gui/manual/userreport.json
1 { 2 "Content": [ 3 { "text": "As a free, open source game, we don't have the resources to test on a wide range of systems, but we want to provide the best quality experience to as many players as possible. When you enable automatic feedback, we'll receive data to help us understand the hardware we should focus on supporting, and to identify performance problems we should fix." }, 4 { "newline": true }, 5 { "text": "The following data will be sent to our server:" }, 6 { "itemText": "A random user ID (stored in %APPDATA%\0ad\config\user.cfg on Windows, ~/.config/0ad/config/user.cfg on Unix), to let us detect repeated reports from the same user." }, 7 { "itemText": "Game version number and basic build settings (optimisation mode, CPU architecture, timestamp, compiler version)." }, 8 { "itemText": "Hardware details: OS version, graphics driver version, OpenGL capabilities, screen size, CPU details, RAM size." }, 9 { "itemText": "Performance details: a snapshot of timing data a few seconds after you start a match or change graphics settings." }, 10 { "newline": true }, 11 { "text": "The data will only be a few kilobytes each time you run the game, so bandwidth usage is minimal." }, 12 { "newline": true }, 13 { "text": "We will store the submitted data on our server, and may publish statistics or non-user-identifiable details to help other game developers with similar questions. We will store the IP address that submitted the data, to help detect abuse of the service, but will not publish it. The published data can be seen at http://feedback.wildfiregames.com/" } 14 ] 15 } -
binaries/data/mods/public/gui/manual/userreport.txt
1 As a free, open source game, we don't have the resources to test on a wide range of systems, but we want to provide the best quality experience to as many players as possible. When you enable automatic feedback, we'll receive data to help us understand the hardware we should focus on supporting, and to identify performance problems we should fix.2 3 The following data will be sent to our server:4 5 • A random user ID (stored in %APPDATA%\0ad\config\user.cfg on Windows, ~/.config/0ad/config/user.cfg on Unix), to let us detect repeated reports from the same user.6 • Game version number and basic build settings (optimisation mode, CPU architecture, timestamp, compiler version).7 • Hardware details: OS version, graphics driver version, OpenGL capabilities, screen size, CPU details, RAM size.8 • Performance details: a snapshot of timing data a few seconds after you start a match or change graphics settings.9 10 The data will only be a few kilobytes each time you run the game, so bandwidth usage is minimal.11 12 We will store the submitted data on our server, and may publish statistics or non-user-identifiable details to help other game developers with similar questions. We will store the IP address that submitted the data, to help detect abuse of the service, but will not publish it. The published data can be seen at http://feedback.wildfiregames.com/ -
binaries/data/mods/public/gui/pregame/mainmenu.xml
Property changes on: binaries/data/mods/public/gui/manual/userreport.txt ___________________________________________________________________ Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property
151 151 <action on="Press"> 152 152 closeMenu(); 153 153 <![CDATA[ 154 Engine.PushGuiPage("page_manual.xml", {"page":"manual/ intro", "title":getManual(), "url":"http://trac.wildfiregames.com/wiki/0adManual"});154 Engine.PushGuiPage("page_manual.xml", {"page":"manual/manual", "title":getManual(), "url":"http://trac.wildfiregames.com/wiki/0adManual"}); 155 155 ]]> 156 156 </action> 157 157 </object> -
binaries/data/mods/public/gui/session/menu.js
748 748 pauseGame(); 749 749 750 750 Engine.PushGuiPage("page_manual.xml", { 751 "page": "manual/ intro",751 "page": "manual/manual", 752 752 "title": translate("Manual"), 753 753 "url": "http://trac.wildfiregames.com/wiki/0adManual", 754 754 "callback": "resumeGame" -
binaries/data/mods/public/l10n/messages.json
161 161 } 162 162 } 163 163 }, 164 165 "extractor": " txt",164 { 165 "extractor": "json", 166 166 "filemasks": [ 167 "gui/lobby/Terms_of_Service.txt", 168 "gui/lobby/Terms_of_Use.txt" 167 "gui/lobby/**.json" 169 168 ], 170 169 "options": { 170 "keywords": [ 171 "Title", 172 "Subtitle", 173 "text", 174 "itemText", 175 "namedItem", 176 "hotkey": { 177 "tagAsContext": true 178 } 179 ] 171 180 } 172 181 } 173 182 ] … … 213 222 } 214 223 } 215 224 }, 216 217 "extractor": " txt",225 { 226 "extractor": "json", 218 227 "filemasks": [ 219 "gui/manual/intro.txt", 220 "gui/manual/userreport.txt" 228 "gui/manual/**.json" 221 229 ], 222 230 "options": { 231 "keywords": [ 232 "Title", 233 "Subtitle", 234 "text", 235 "itemText", 236 "namedItem", 237 "hotkey": { 238 "tagAsContext": true 239 } 240 ] 223 241 } 224 242 } 225 243 ]