Mindmap extended with website structure and several improvements
[shipsimu.git] / docs / Ship-Simu Ship-Simulator.mm
1 <map version="0.7.1">
2 <node TEXT="Ship-Simu Ship-Simulation">
3 <font NAME="SansSerif" BOLD="true" SIZE="18"/>
4 <node TEXT="Browser-Game" POSITION="right">
5 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
6 <icon BUILTIN="messagebox_warning"/>
7 <node TEXT="Tick-based simulation">
8 <node TEXT="Cronological job (cron)">
9 <node TEXT="Addional requirement for installation"/>
10 </node>
11 </node>
12 <node TEXT="Click-based simulation">
13 <node TEXT="User clicks a button, action performed"/>
14 </node>
15 <node TEXT="Pseudo-3D graphics">
16 <node TEXT="Still graphics">
17 <node TEXT="Different ships">
18 <node TEXT="Passenger ship"/>
19 <node TEXT="Oil tanker"/>
20 <node TEXT="Container ship"/>
21 <node TEXT="Misc small ships"/>
22 </node>
23 <node TEXT="Buildings">
24 <node TEXT="Shipyard"/>
25 <node TEXT="Dry dock"/>
26 <node TEXT="Terminal building"/>
27 </node>
28 <node TEXT="Vehicles">
29 <node TEXT="Container carrier"/>
30 <node TEXT="Crane"/>
31 </node>
32 <node TEXT="All pics should be self-shooted">
33 <node TEXT="This avoids copyright conflicts"/>
34 <node TEXT="The requested buildings/vehicles must be found in reality"/>
35 </node>
36 </node>
37 <node TEXT="Slightly moved graphics (GIF)">
38 <node TEXT="Water surface"/>
39 <node TEXT="Sky texture"/>
40 </node>
41 </node>
42 <node TEXT="Fully XHTML 1.0">
43 <node TEXT="Latest Internet standard"/>
44 <node TEXT="Older browsers will make lesser trouble"/>
45 <node TEXT="Should validate with the W3C HTML Validator">
46 <node LINK="http://validator.w3.org" TEXT="http://validator.w3.org">
47 <icon BUILTIN="attach"/>
48 </node>
49 </node>
50 </node>
51 <node TEXT="Design is CSS-based">
52 <font NAME="SansSerif" SIZE="12"/>
53 <node TEXT="Themes are possible"/>
54 </node>
55 <node TEXT="Nice AJAX features">
56 <icon BUILTIN="idea"/>
57 <icon BUILTIN="desktop_new"/>
58 </node>
59 <node TEXT="Website structure">
60 <font NAME="SansSerif" BOLD="true" SIZE="14"/>
61 <node TEXT="External guest area">
62 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
63 <node TEXT="News on the front page (home)">
64 <node TEXT="The news source can be choosen from different">
65 <node TEXT="Previously typed and stored in database"/>
66 <node TEXT="Local XML files">
67 <node TEXT="Hint: Created by external generators">
68 <font NAME="SansSerif" SIZE="12"/>
69 </node>
70 </node>
71 <node TEXT="Remote XMLs like RSS feeds"/>
72 </node>
73 <node TEXT="The typer can choose a category">
74 <node TEXT="New categories can be suggested by the typer"/>
75 <node TEXT="An admin can create new categories"/>
76 </node>
77 <node TEXT="Comments are allowable">
78 <node TEXT="Logged-in users"/>
79 <node TEXT="Guests as well">
80 <icon BUILTIN="clanbomber"/>
81 <node TEXT="Secured with CAPTCHA">
82 <icon BUILTIN="messagebox_warning"/>
83 </node>
84 </node>
85 </node>
86 <node TEXT="One object for all news should be fine">
87 <node TEXT="Do not use one object per news entry!">
88 <icon BUILTIN="clanbomber"/>
89 <icon BUILTIN="stop"/>
90 </node>
91 <node TEXT="The object receives a &quot;Requestable&quot; object">
92 <node TEXT="Obtain page number and sent comment data from it"/>
93 </node>
94 </node>
95 </node>
96 <node TEXT="Registration form" STYLE="fork">
97 <node TEXT="One single page"/>
98 <node TEXT="Multiple pages"/>
99 </node>
100 <node TEXT="Login form">
101 <node TEXT="With guest login (disable by the admin)"/>
102 <node TEXT="Password reminder"/>
103 <node TEXT="Link to the registration form"/>
104 </node>
105 <node TEXT="Screenshot gallery">
106 <node TEXT="Comments are allowable"/>
107 <node TEXT="Should be kept simple"/>
108 </node>
109 <node TEXT="List of enabled features" STYLE="fork"/>
110 <node TEXT="Statistics of the game (not whole network!)"/>
111 <node TEXT="List of playing users">
112 <node TEXT="With link to their public profiles"/>
113 </node>
114 <node TEXT="Pillory">
115 <node TEXT="Username (who got locked)"/>
116 <node TEXT="Date&amp;Time"/>
117 <node TEXT="The admin"/>
118 <node TEXT="Stated reason"/>
119 </node>
120 <node TEXT="Small extra pages">
121 <node TEXT="Imprint (required in Germany)"/>
122 <node TEXT="Privacy policy (required in some countries)"/>
123 </node>
124 </node>
125 <node TEXT="Internal game area">
126 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
127 <node TEXT="News on first login page">
128 <node TEXT="Like on &quot;home&quot; page except that there is no captcha required"/>
129 </node>
130 <node TEXT="Create new game character">
131 <edge STYLE="bezier"/>
132 <cloud/>
133 <font NAME="SansSerif" SIZE="12"/>
134 <icon BUILTIN="password"/>
135 <node TEXT="The gamer can have all varriants">
136 <node TEXT="This may be limitable by admin"/>
137 <node TEXT="The player still cannot make contracts with own characters">
138 <icon BUILTIN="messagebox_warning"/>
139 </node>
140 </node>
141 <node TEXT="It should cost somewhere a fee">
142 <node TEXT="The fee shall be payed from user account"/>
143 </node>
144 <node TEXT="For first character creation he shall have enougth game money plus some extra"/>
145 <node TEXT="Types of characters">
146 <node TEXT="Shipping company founder">
147 <node TEXT="This includes the fee for funding new company"/>
148 </node>
149 <node TEXT="Jobholder">
150 <node TEXT="Starts unemployed"/>
151 <node TEXT="Some money left for sending applications out"/>
152 <node TEXT="May ask goverment (AI) for financial help"/>
153 </node>
154 <node TEXT="Merchant">
155 <node TEXT="Raw resources"/>
156 <node TEXT="Constructed ship parts"/>
157 <node TEXT="Smaller ships"/>
158 </node>
159 <node TEXT="Marketing Agency">
160 <node TEXT="Sells marketing/merchandising products"/>
161 </node>
162 <node TEXT="Goverment is not playable at the moment">
163 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
164 <icon BUILTIN="messagebox_warning"/>
165 </node>
166 </node>
167 </node>
168 <node TEXT="Load existing character">
169 <cloud/>
170 <font NAME="SansSerif" SIZE="12"/>
171 <icon BUILTIN="password"/>
172 <node TEXT="Contains link to &quot;Create new character&quot;"/>
173 <node TEXT="Player sees some basic data about the character"/>
174 </node>
175 <node TEXT="Refill account"/>
176 <node TEXT="Update gamer/user profile">
177 <node TEXT="Enter the current account password"/>
178 <node TEXT="Send email to the user only if no email has changed, or if ..."/>
179 <node TEXT="Has the email been changed?">
180 <icon BUILTIN="help"/>
181 <node TEXT="Send new confirmation to new email"/>
182 <node TEXT="Send notifier to old email"/>
183 </node>
184 </node>
185 <node TEXT="Change account password">
186 <node TEXT="Enter current account password"/>
187 <node TEXT="Enter new password twice"/>
188 <node TEXT="Send an email to the user"/>
189 </node>
190 </node>
191 <node TEXT="General structure">
192 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
193 </node>
194 </node>
195 <node TEXT="Strict coding guidelines for better PHP code">
196 <font NAME="SansSerif" BOLD="true" SIZE="14"/>
197 <icon BUILTIN="xmag"/>
198 <node TEXT="General code structure">
199 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
200 <icon BUILTIN="messagebox_warning"/>
201 <node TEXT="Fully object-oriented"/>
202 <node TEXT="Use of different but practical design patterns"/>
203 </node>
204 <node TEXT="Documentation">
205 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
206 <node TEXT="In-line documentation">
207 <node TEXT="Script header with full copyright and license as requested by GNU GPL 3"/>
208 <node TEXT="Method headers with Doxygen compatible tags"/>
209 <node TEXT="Comments above single lines for better understanding what is happening"/>
210 </node>
211 <node TEXT="Files in directory &quot;docs&quot;">
212 <node TEXT="COPYING*"/>
213 <node TEXT="Conception"/>
214 <node TEXT="NEWS"/>
215 <node TEXT="README"/>
216 <node TEXT="ArgoUML diagram"/>
217 <node TEXT="FreeMind document"/>
218 <node TEXT="THANKS"/>
219 <node TEXT="minmap_yyyymmdd.html"/>
220 </node>
221 </node>
222 <node TEXT="Folding of the code">
223 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
224 </node>
225 <node TEXT="Tabs and spaces">
226 <font NAME="SansSerif" BOLD="true" SIZE="12"/>
227 </node>
228 </node>
229 </node>
230 <node TEXT="How does a shipping company work?" POSITION="left">
231 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
232 <icon BUILTIN="messagebox_warning"/>
233 <node TEXT="Start as a founder by selecting a harbor">
234 <cloud/>
235 <node TEXT="Construct neccessary buildings">
236 <node TEXT="Make contract with construction companies"/>
237 </node>
238 <node TEXT="Order ship parts">
239 <node TEXT="Fron your partners"/>
240 <node TEXT="On global market"/>
241 </node>
242 <node TEXT="Make contracts with other companies">
243 <node TEXT="Construct ships for your partner"/>
244 <node TEXT="Drive constructed ships by your partner"/>
245 </node>
246 <node TEXT="Build ship parts and trade them"/>
247 <node TEXT="Become CEO and manage your company">
248 <node TEXT="Nominate department managers"/>
249 <node TEXT="Recruit new employees"/>
250 <node TEXT="Pay salery to your employees"/>
251 </node>
252 <node TEXT="Let other gamer manage your company"/>
253 <node TEXT="Compare prices">
254 <node TEXT="Make a purchase computation system"/>
255 </node>
256 <node TEXT="Manage a journey"/>
257 </node>
258 <node TEXT="Or start as an employee">
259 <cloud/>
260 <node TEXT="Start as a simple sailor">
261 <node TEXT="And end up as a captain">
262 <node TEXT="Control your ship (depends on client)"/>
263 </node>
264 </node>
265 <node TEXT="Or start as a shipbuilder">
266 <node TEXT="Repair ships">
267 <node TEXT="Renew the painting"/>
268 <node TEXT="Fix broken things"/>
269 </node>
270 <node TEXT="Build up new ships"/>
271 </node>
272 <node TEXT="As an officer">
273 <icon BUILTIN="idea"/>
274 <icon BUILTIN="help"/>
275 </node>
276 <node TEXT="As a cleaner"/>
277 </node>
278 <node TEXT="Create a board of managers">
279 <icon BUILTIN="idea"/>
280 <icon BUILTIN="help"/>
281 <node TEXT="Only for bigger companies"/>
282 </node>
283 <node TEXT="Design your own ships">
284 <node TEXT="From templates (default ships)"/>
285 <node TEXT="Or your complete freely designed layout"/>
286 </node>
287 <node TEXT="Ride constructed ships">
288 <node TEXT="Make sail plans"/>
289 <node TEXT="Transportate cargo or humans">
290 <node TEXT="Make your passengers happy"/>
291 <node TEXT="Load containers and bring them to other harbors"/>
292 <node TEXT="Transportate oil from ricks to the refineries"/>
293 </node>
294 <node TEXT="Depends on used client"/>
295 </node>
296 <node TEXT="Earn a lot (virtual/real) money">
297 <node TEXT="Sell a journey"/>
298 <node TEXT="Trade with goods"/>
299 <node TEXT="Construct ships for other companies"/>
300 </node>
301 <node TEXT="Play as a passenger">
302 <node TEXT="Order a jorney to your desired destionation"/>
303 </node>
304 </node>
305 <node TEXT="Multi-Player Mode" POSITION="right">
306 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
307 <icon BUILTIN="messagebox_warning"/>
308 <node TEXT="Networked over hubs"/>
309 <node TEXT="Big map which holds all harbors">
310 <node TEXT="Seperated into small maps to cluster the load over the network"/>
311 </node>
312 </node>
313 <node TEXT="Java client" POSITION="left">
314 <cloud/>
315 <icon BUILTIN="idea"/>
316 <node TEXT="Real-time simulation"/>
317 <node TEXT="OpenGL (3D Graphics)">
318 <node TEXT="JOGL"/>
319 </node>
320 <node TEXT="OpenAL (3D sound)"/>
321 </node>
322 <node TEXT="&quot;Faked&quot; Single-Player" POSITION="right">
323 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
324 <icon BUILTIN="messagebox_warning"/>
325 <node TEXT="Locally installed version"/>
326 <node TEXT="Does not connect to other hubs"/>
327 <node TEXT="&quot;Save games&quot; should be incompatible with MP mode">
328 <node TEXT="Avoids cheating"/>
329 </node>
330 </node>
331 <node TEXT="Sand-Box Mode" POSITION="right">
332 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
333 <icon BUILTIN="messagebox_warning"/>
334 <node TEXT="The player can test the game">
335 <node TEXT="Some people like to &quot;explore&quot; the game"/>
336 <node TEXT="Or just wanna have a look"/>
337 </node>
338 <node TEXT="There are no competitors">
339 <font NAME="SansSerif" SIZE="12"/>
340 </node>
341 <node TEXT="Creating characters is for free"/>
342 <node TEXT="The game will not connect to network"/>
343 <node TEXT="Characters are invalid to multi/single-player characters">
344 <node TEXT="Prevents cheating a bit">
345 <icon BUILTIN="clanbomber"/>
346 </node>
347 </node>
348 </node>
349 <node TEXT="Modern-epoche game" POSITION="left">
350 <node TEXT="Age: 1950+"/>
351 <node TEXT="The abstraction level is kept low"/>
352 </node>
353 <node TEXT="Licences" POSITION="left">
354 <node TEXT="The game">
355 <node TEXT="Ship-Simu is licensed under the GNU GPL 3 or any newer version">
356 <node TEXT="See docs/COPYING.software"/>
357 </node>
358 </node>
359 <node TEXT="This document">
360 <node TEXT="This mind-map is licensed under the GNU FDL 1.2 or any newer version">
361 <node TEXT="See docs/COPYING.documents"/>
362 </node>
363 </node>
364 <node TEXT="Artworks like sounds/graphics">
365 <node TEXT="Some CC license">
366 <icon BUILTIN="xmag"/>
367 </node>
368 </node>
369 </node>
370 <node TEXT="Data exchange protocol" POSITION="right">
371 <node TEXT="Default is an own small format">
372 <node TEXT="Reduces traffic between servers"/>
373 </node>
374 <node TEXT="Easy rewriteable to e.g. XML">
375 <node TEXT="Other clients (Flash) can also connect"/>
376 </node>
377 <node TEXT="Java and browser client can play together"/>
378 </node>
379 <node TEXT="Optional Pillory" POSITION="left">
380 <node TEXT="To make e.g. nazi propaganda activity public"/>
381 <node TEXT="Shall keep bad players away"/>
382 <node TEXT="Requires some &quot;game-moderator&quot; access level to manage">
383 <node TEXT="The moderator shall have an extra flag e.g. &quot;pillory_accessable&quot;"/>
384 </node>
385 <node TEXT="Players, companies et cetera should be lockable">
386 <node TEXT="The moderator can choose wether to lock with pillory entry or just locking down"/>
387 </node>
388 </node>
389 <node LINK="http://www.ship-simu.org" TEXT="http://www.ship-simu.org" POSITION="right">
390 <icon BUILTIN="attach"/>
391 </node>
392 <node TEXT="How do you construct a ship?" POSITION="left">
393 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
394 <node TEXT="The technology">
395 <node ID="_Freemind_Link_34058737" TEXT="Ship">
396 <node ID="_Freemind_Link_970552884" TEXT="Size"/>
397 <node ID="_Freemind_Link_446463585" TEXT="Construction">
398 <node ID="_Freemind_Link_141857388" TEXT="Hull"/>
399 <node ID="_Freemind_Link_563134447" TEXT="Wheel house"/>
400 <node ID="_Freemind_Link_1490756383" TEXT="Support (meal) for crew/passenger"/>
401 <node ID="_Freemind_Link_38506335" TEXT="Rooms">
402 <node TEXT="Canteen"/>
403 <node TEXT="Cabin">
404 <node TEXT="Luxury cabin"/>
405 <node TEXT="Premier cabin"/>
406 <node TEXT="Economy cabin"/>
407 <node TEXT="Low cabin"/>
408 </node>
409 <node TEXT="Motor room"/>
410 <node TEXT="Special rooms">
411 <node TEXT="Cinema"/>
412 <node TEXT="Theatre"/>
413 <node TEXT="Disco"/>
414 <node TEXT="Bars/Cafes"/>
415 </node>
416 </node>
417 <node TEXT="Engine">
418 <node TEXT="Sail"/>
419 <node TEXT="Propeller"/>
420 </node>
421 <node TEXT="Decks">
422 <node TEXT="Car deck"/>
423 <node TEXT="Truck deck"/>
424 <node TEXT="Train deck"/>
425 </node>
426 </node>
427 <node TEXT="Crew (depending on ship type)">
428 <node TEXT="Sailor/captain"/>
429 <node TEXT="Cleaners"/>
430 <node TEXT="Security service"/>
431 <node TEXT="Maintenance staff"/>
432 <node TEXT="Catering staff">
433 <node TEXT="Cook"/>
434 <node TEXT="Steward (passenger ship)"/>
435 </node>
436 </node>
437 </node>
438 </node>
439 <node TEXT="The economics">
440 <node ID="_Freemind_Link_554040694" TEXT="Costs">
441 <node ID="_Freemind_Link_1671691099" TEXT="Ressources">
442 <node ID="_Freemind_Link_1385368958" TEXT="Wood">
443 <node TEXT="Coverage"/>
444 <node TEXT="Constructuon (all)"/>
445 </node>
446 <node ID="_Freemind_Link_799981169" TEXT="Financials"/>
447 <node ID="_Freemind_Link_1436100534" TEXT="Iron">
448 <node TEXT="Steel"/>
449 </node>
450 <node TEXT="Marmor"/>
451 <node TEXT="Color"/>
452 <node TEXT="Carpets"/>
453 </node>
454 <node ID="_Freemind_Link_511748963" TEXT="Work">
455 <node ID="_Freemind_Link_578404113" TEXT="Worker">
456 <node ID="_Freemind_Link_1864981448" TEXT="Qualified">
457 <node TEXT="Fast"/>
458 <node TEXT="Hight-quality work"/>
459 <node TEXT="Expensive"/>
460 </node>
461 <node ID="_Freemind_Link_894167206" TEXT="Helper (non-qualified)">
462 <node TEXT="Slow"/>
463 <node TEXT="Low-quality work"/>
464 <node TEXT="Cheap"/>
465 </node>
466 </node>
467 <node ID="_Freemind_Link_1901309571" TEXT="Employee morale"/>
468 <node TEXT="Salary"/>
469 </node>
470 </node>
471 </node>
472 <node TEXT="The research"/>
473 <node TEXT="Unsorted ideas">
474 <icon BUILTIN="pencil"/>
475 <node TEXT="All buildings shall gain a basic tech-level"/>
476 <node TEXT="Some parts of the ship or building are only available at or above a tech-level"/>
477 <node TEXT="Tech levels can be improved by research"/>
478 <node TEXT="General research complexes can increase tech-level of all types of buildings and ship parts"/>
479 <node TEXT="Doing resarch requires a lot money"/>
480 <node TEXT="Specialists must be hired for doing the research"/>
481 <node TEXT="Ship yards are highly required to construct ships">
482 <node TEXT="Without these facilities the gamer shall never be able to construct ships"/>
483 </node>
484 <node TEXT="Hired workers must be trained to do simple steps"/>
485 </node>
486 </node>
487 <node TEXT="Misc" POSITION="right">
488 <font NAME="SansSerif" BOLD="true" SIZE="16"/>
489 <node TEXT="Point system (in-game money)">
490 <font NAME="SansSerif" BOLD="true" SIZE="14"/>
491 </node>
492 </node>
493 </node>
494 </map>