]> git.mxchange.org Git - shipsimu-docs.git/blob - shipsimu-docs/Browser-Game.html
Re-export of the mind-maps (currently the .mm files are linked, not .html :-( )
[shipsimu-docs.git] / shipsimu-docs / Browser-Game.html
1 <?xml version="1.0" encoding="iso-8859-1"?><?xml-stylesheet href="treestyles.css" type="text/css"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xml:lang="fi" xmlns="http://www.w3.org/1999/xhtml"><head><title>Browser-Game</title><link rel="stylesheet" href="Browser-Game.html_files/treestyles.css" type="text/css"/><script type="text/javascript" src="Browser-Game.html_files/marktree.js">  </script></head><body><div class="basetop"><a href="#" onclick="expandAll(document.getElementById('base'))">Expand</a> - <a href="#" onclick="collapseAll(document.getElementById('base'))">Collapse</a></div><div id="base" class="basetext"><ul><li class="col" style="" id="FMFreemind_Link_1680848234FM"><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="font-size:150%;font-weight:bold;"><a href="Ship-Simu-Ship-Simulator.mm">Browser-Game</a> <a href="Ship-Simu-Ship-Simulator.mm"><img src="Browser-Game.html_files/icons/Link.png" alt="" style="border-width:0"/></a></span><ul class="subexp"><li class="col" style=""><span style="font-size:117%;font-weight:bold;">Procedures</span><ul class="subexp"><li class="col" style=""><span style="font-size:100%;font-weight:bold;">Registration procedure</span><ul class="subexp"><li class="col" style=""><span style="">Make sure the user account is only used once</span><ul class="subexp"><li class="basic" style=""><span style="">An AJAX request may give the user faster feedback</span></li></ul></li><li class="col" style=""><span style="">If required make also sure that the email is used once</span><ul class="subexp"><li class="basic" style=""><span style="">Another AJAX request might be helpful here</span></li></ul></li><li class="basic" style=""><span style="">Both passwords must match as verification</span></li><li class="basic" style=""><span style="">Non-required form fields are checked only if there is content for XSS or other bad things</span></li><li class="basic" style=""><span style="">Encrypt/hash the password (should always be performed)</span></li><li class="basic" style=""><span style="">Complete the registration by adding the user account to the database</span></li><li class="col" style=""><span style="">Registered partners shall be notified with different ways</span><ul class="subexp"><li class="basic" style=""><span style="">XML-RPC is the default</span></li><li class="basic" style=""><span style="">Different notifiers shall also be possible</span></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/xmag.png" alt="xmag"/> <img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="">This might be queueable to avoid long waiting times for slow partner pages</span></li></ul></li><li class="basic" style=""><span style="">Send out confirmation mail if requested by configuration</span></li><li class="col" style=""><span style="">Redirect the user to a new page</span><ul class="subexp"><li class="basic" style=""><span style="">Default is the "Registration completed" page</span></li><li class="basic" style=""><span style="">Home page shall be chooseable</span></li><li class="basic" style=""><span style="">Other URLs can be used as well</span></li></ul></li><li class="col" style=""><span style="">Alternatively login to the internal area</span><ul class="subexp"><li class="basic" style=""><span style="">The account is not useable if email is not confirmed</span></li></ul></li></ul></li><li class="basic" style="" id="FMFreemind_Link_1638061895FM"><span style="font-size:100%;font-weight:bold;">Login procedure</span></li><li class="col" style=""><span style="font-size:100%;font-weight:bold;">General</span><ul class="subexp"><li class="basic" style=""><span style="">Most steps shall be done by an intercepting filter pattern</span></li></ul></li></ul></li><li class="col" style=""><span style="">Pseudo-3D graphics</span><ul class="subexp"><li class="col" style=""><span style="">Still graphics</span><ul class="subexp"><li class="col" style=""><span style="">Different ships</span><ul class="subexp"><li class="basic" style=""><span style="">Passenger ship</span></li><li class="basic" style=""><span style="">Oil tanker</span></li><li class="basic" style=""><span style="">Container ship</span></li><li class="basic" style=""><span style="">Misc small ships</span></li></ul></li><li class="col" style=""><span style="">Buildings</span><ul class="subexp"><li class="basic" style=""><span style="">Shipyard</span></li><li class="basic" style=""><span style="">Dry dock</span></li><li class="basic" style=""><span style="">Terminal building</span></li></ul></li><li class="col" style=""><span style="">Vehicles</span><ul class="subexp"><li class="basic" style=""><span style="">Container carrier</span></li><li class="basic" style=""><span style="">Crane</span></li></ul></li><li class="col" style=""><span style="">All pics should be self-shooted</span><ul class="subexp"><li class="basic" style=""><span style="">This avoids copyright conflicts</span></li><li class="basic" style=""><span style="">The requested buildings/vehicles must be found in reality</span></li></ul></li></ul></li><li class="col" style=""><span style="">Slightly moved graphics (GIF)</span><ul class="subexp"><li class="basic" style=""><span style="">Water surface</span></li><li class="basic" style=""><span style="">Sky texture</span></li></ul></li></ul></li><li class="col" style=""><span style="">Tick-based simulation</span><ul class="subexp"><li class="col" style=""><span style="">Cronological job (cron)</span><ul class="subexp"><li class="basic" style=""><span style="">Addional requirement for installation</span></li></ul></li></ul></li><li class="col" style=""><span style="">Click-based simulation</span><ul class="subexp"><li class="basic" style=""><span style="">User clicks a button, action performed</span></li></ul></li><li class="col" style=""><span style="">Fully XHTML 1.0</span><ul class="subexp"><li class="basic" style=""><span style="">Latest Internet standard</span></li><li class="basic" style=""><span style="">Older browsers will make lesser trouble</span></li><li class="col" style=""><span style="">Should validate with the W3C HTML Validator</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/attach.png" alt="attach"/> <span style=""><a href="http://validator.w3.org">http://validator.w3.org</a> <a href="http://validator.w3.org"><img src="Browser-Game.html_files/icons/Link.png" alt="" style="border-width:0"/></a></span></li></ul></li></ul></li><li class="col" style=""><span style="font-size:100%;">Design is CSS-based</span><ul class="subexp"><li class="basic" style=""><span style="">Themes are possible</span></li></ul></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/idea.png" alt="idea"/> <img src="Browser-Game.html_files/icons/desktop_new.png" alt="desktop_new"/> <span style="">Nice AJAX features</span></li><li class="col" style="" id="FMFreemind_Link_1491280472FM"><span style="font-size:117%;font-weight:bold;">Website structure</span><ul class="subexp"><li class="col" style="" id="FMFreemind_Link_1521419096FM"><span style="font-size:100%;font-weight:bold;">External guest area</span><ul class="subexp"><li class="col" style=""><span style="">News on the front page (home)</span><ul class="subexp"><li class="col" style=""><span style="">The news source can be choosen from different</span><ul class="subexp"><li class="basic" style=""><span style="">Previously typed and stored in database</span></li><li class="col" style=""><span style="">Local XML files</span><ul class="subexp"><li class="basic" style=""><span style="font-size:100%;">Hint: Created by external generators</span></li></ul></li><li class="basic" style=""><span style="">Remote XMLs like RSS feeds</span></li></ul></li><li class="col" style=""><span style="">The typer can choose a category</span><ul class="subexp"><li class="basic" style=""><span style="">New categories can be suggested by the typer</span></li><li class="basic" style=""><span style="">An admin can create new categories</span></li></ul></li><li class="col" style=""><span style="">Comments are allowable</span><ul class="subexp"><li class="basic" style=""><span style="">Logged-in users</span></li><li class="col" style=""><img src="Browser-Game.html_files/icons/clanbomber.png" alt="clanbomber"/> <span style="">Guests as well</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="">Secured with CAPTCHA</span></li></ul></li></ul></li><li class="col" style=""><span style="">One object for all news should be fine</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/clanbomber.png" alt="clanbomber"/> <img src="Browser-Game.html_files/icons/stop.png" alt="stop"/> <span style="">Do not use one object per news entry!</span></li><li class="col" style=""><span style="">The object receives a "Requestable" object</span><ul class="subexp"><li class="basic" style=""><span style="">Obtain page number and sent comment data from it</span></li></ul></li></ul></li></ul></li><li class="col" style=""><span style="">Registration form</span><ul class="subexp"><li class="basic" style=""><span style="">One single page</span></li><li class="basic" style=""><span style="">Multiple pages</span></li></ul></li><li class="col" style=""><span style="">Login form</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/bell.png" alt="bell"/> <img src="Browser-Game.html_files/icons/idea.png" alt="idea"/> <span style="">With guest login (disable by the admin)</span></li><li class="basic" style=""><span style="">Password reminder</span></li><li class="basic" style=""><span style="">Link to the registration form</span></li><li class="col" style=""><span style="">Different login methods configureable by admin:</span><ul class="subexp"><li class="basic" style=""><span style="">By username+password</span></li><li class="basic" style=""><span style="">By email+password</span></li><li class="basic" style=""><span style="">By username/email+password</span></li></ul></li><li class="col" style=""><span style="">Wether cookie-based or session-based login</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="">This shall be configureable by admin</span></li></ul></li></ul></li><li class="col" style=""><span style="">Screenshot gallery</span><ul class="subexp"><li class="basic" style=""><span style="">Comments are allowable</span></li><li class="basic" style=""><span style="">Should be kept simple</span></li></ul></li><li class="basic" style=""><span style="">List of enabled features</span></li><li class="basic" style=""><span style="">Statistics of the game (not whole network!)</span></li><li class="col" style=""><span style="">List of playing users</span><ul class="subexp"><li class="basic" style=""><span style="">With link to their public profiles</span></li></ul></li><li class="col" style="" id="FMFreemind_Link_1307618947FM"><span style="">Pillory</span><ul class="subexp"><li class="col" style="" id="FM_FM"><img src="Browser-Game.html_files/icons/idea.png" alt="idea"/> <span style="">Should be used to combat abuse</span><ul class="subexp"><li class="basic" style="" id="FMFreemind_Link_1670057335FM"><span style="">Child pornography</span></li><li class="basic" style="" id="FMFreemind_Link_1276984970FM"><span style="">Nacy activities</span></li><li class="basic" style="" id="FMFreemind_Link_805679314FM"><span style="">Spam attempts</span></li></ul></li><li class="basic" style="" id="FMFreemind_Link_292927111FM"><span style="">Username (who got locked)</span></li><li class="basic" style=""><span style="">Date&amp;Time</span></li><li class="basic" style=""><span style="">The admin</span></li><li class="basic" style=""><span style="">Stated reason</span></li></ul></li><li class="col" style="" id="FMFreemind_Link_1776800199FM"><span style="">Small extra pages</span><ul class="subexp"><li class="basic" style=""><span style="">Imprint (required in Germany)</span></li><li class="basic" style=""><span style="">Privacy policy (required in some countries)</span></li></ul></li></ul></li><li class="col" style=""><span style="font-size:100%;font-weight:bold;">Internal game area</span><ul class="subexp"><li class="col" style=""><span style="">News on first login page</span><ul class="subexp"><li class="basic" style=""><span style="">Like on "home" page except that there is no captcha required</span></li><li class="basic" style=""><span style="">Including history of recent events since last login</span></li><li class="basic" style=""><span style="">Announcements in special sub-category for newly founded shipping/travel companies</span></li></ul></li><li class="col" style=""><img src="Browser-Game.html_files/icons/password.png" alt="password"/> <span style="font-size:100%;">Create new game character</span><ul class="subexp"><li class="col" style=""><span style="">The gamer can have all varriants</span><ul class="subexp"><li class="basic" style=""><span style="">This may be limitable by admin</span></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="">The player still cannot make contracts with own characters</span></li></ul></li><li class="col" style=""><span style="">It should cost somewhere a fee</span><ul class="subexp"><li class="basic" style=""><span style="">The fee shall be payed from user account</span></li></ul></li><li class="basic" style=""><span style="">For first character creation he shall have enougth game money plus some extra</span></li><li class="col" style=""><span style="">Types of characters</span><ul class="subexp"><li class="col" style=""><span style="">Shipping company founder</span><ul class="subexp"><li class="basic" style=""><span style="">This includes the fee for funding new company</span></li><li class="col" style=""><span style="">A news for the community shall be placed</span><ul class="subexp"><li class="basic" style=""><span style="">The admin/mod can still moderate it</span></li></ul></li></ul></li><li class="col" style=""><span style="">Travel company founder</span><ul class="subexp"><li class="basic" style=""><span style="">Like shipping company...</span></li></ul></li><li class="col" style=""><span style="">Jobholder</span><ul class="subexp"><li class="basic" style=""><span style="">Starts unemployed</span></li><li class="basic" style=""><span style="">Some money left for sending applications out</span></li><li class="basic" style=""><span style="">May ask goverment for financial help</span></li><li class="col" style=""><img src="Browser-Game.html_files/icons/stop.png" alt="stop"/> <span style="">Has to pay monthly fees</span><ul class="subexp"><li class="basic" style=""><span style="">Rent for a "fake" house</span></li><li class="basic" style=""><span style="">Meal and drinks (faked)</span></li><li class="basic" style=""><span style="">Others costs like phone,electricity</span></li></ul></li></ul></li><li class="col" style=""><span style="">Merchant</span><ul class="subexp"><li class="basic" style=""><span style="">Raw resources</span></li><li class="basic" style=""><span style="">Constructed ship parts</span></li><li class="basic" style=""><span style="">Smaller complete ships</span></li></ul></li><li class="col" style=""><span style="">Marketing Agency</span><ul class="subexp"><li class="basic" style=""><span style="">Sells marketing/merchandising products</span></li></ul></li></ul></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="font-size:100%;font-style:italic;">This is only possible if account is activated</span></li></ul></li><li class="col" style=""><img src="Browser-Game.html_files/icons/password.png" alt="password"/> <span style="font-size:100%;">"Load" existing character</span><ul class="subexp"><li class="basic" style=""><span style="">Contains link to "Create new character"</span></li><li class="basic" style=""><span style="">Player sees some basic data about listed characters</span></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/idea.png" alt="idea"/> <span style="">Locked characters should not be removed instead marked with "Locked"</span></li></ul></li><li class="col" style=""><span style="">Refill account points</span><ul class="subexp"><li class="basic" style=""><span style="">The admin may choose if the in-game can be converted with a low rate to account points</span></li><li class="col" style=""><span style="">This option might be disabled by admin</span><ul class="subexp"><li class="basic" style=""><span style="">Then the gamer can only refill in-game money per character</span></li></ul></li></ul></li><li class="col" style=""><span style="">Update gamer/user profile</span><ul class="subexp"><li class="basic" style=""><span style="">Enter the current account password</span></li><li class="basic" style=""><span style="">Send email to the user only if no email has changed, or if ...</span></li><li class="col" style=""><img src="Browser-Game.html_files/icons/help.png" alt="help"/> <span style="">Has the email been changed?</span><ul class="subexp"><li class="basic" style=""><span style="">Send new confirmation to new email</span></li><li class="basic" style=""><span style="">Send notifier to old email</span></li></ul></li><li class="col" style=""><span style="">Change account password</span><ul class="subexp"><li class="basic" style=""><span style="">Enter current account password</span></li><li class="basic" style=""><span style="">Enter new password twice</span></li><li class="basic" style=""><span style="">Send an email to the user</span></li></ul></li></ul></li></ul></li><li class="col" style=""><span style="font-size:100%;font-weight:bold;">General infrastructures</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/password.png" alt="password"/> <span style="font-size:100%;">Point system (in-game money)</span></li><li class="col" style=""><img src="Browser-Game.html_files/icons/flag.png" alt="flag"/> <img src="Browser-Game.html_files/icons/password.png" alt="password"/> <span style="">A.I. goverment</span><ul class="subexp"><li class="basic" style=""><span style="">Shall help unemployed gamers staying alive (but not becoming rich)</span></li><li class="col" style=""><span style="">May later on collect taxes from companies</span><ul class="subexp"><li class="basic" style=""><span style="">For paying unemployed people</span></li><li class="basic" style=""><span style="">Financial support for broken companies</span></li></ul></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/xmag.png" alt="xmag"/> <img src="Browser-Game.html_files/icons/pencil.png" alt="pencil"/> <span style="">May ofer social security services</span></li><li class="col" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="font-size:100%;">Goverment is not playable at the moment</span><ul class="subexp"><li class="basic" style=""><span style="">It should be "played" abstractly by the server</span></li><li class="basic" style=""><span style="">Gamers may help each other with financial support</span></li></ul></li></ul></li></ul></li></ul></li><li class="col" style="" id="FMFreemind_Link_463540660FM"><img src="Browser-Game.html_files/icons/xmag.png" alt="xmag"/> <span style="font-size:117%;font-weight:bold;">Strict coding guidelines for clean PHP code</span><ul class="subexp"><li class="col" style=""><img src="Browser-Game.html_files/icons/messagebox_warning.png" alt="messagebox_warning"/> <span style="font-size:100%;font-weight:bold;">General code structure</span><ul class="subexp"><li class="col" style=""><span style="">Fully object-oriented</span><ul class="subexp"><li class="col" style=""><span style="">Use of different but practical design patterns</span><ul class="subexp"><li class="basic" style=""><span style="">Factory-method pattern for smother initializing of objects</span></li><li class="basic" style=""><span style="">Template method pattern where it matches</span></li><li class="basic" style=""><span style="">MVC pattern for the website core</span></li></ul></li><li class="basic" style=""><span style="">Only one index.php shall provide access to the whole game</span></li><li class="basic" style=""><img src="Browser-Game.html_files/icons/clanbomber.png" alt="clanbomber"/> <span style="">Slower in PHP5</span></li></ul></li></ul></li><li class="col" style=""><span style="font-size:100%;font-weight:bold;">Documentation</span><ul class="subexp"><li class="col" style=""><span style="">In-line documentation</span><ul class="subexp"><li class="basic" style=""><span style="">Script header with full copyright and license as requested by GNU GPL 3</span></li><li class="basic" style=""><span style="">Method headers with Doxygen compatible tags</span></li><li class="basic" style=""><span style="">Comments above single lines for better understanding what is happening</span></li></ul></li><li class="col" style=""><span style="">Files in directory "docs"</span><ul class="subexp"><li class="col" style=""><span style="">COPYING*</span><ul class="subexp"><li class="basic" style=""><span style="">License files</span></li></ul></li><li class="col" style=""><span style="">Conception</span><ul class="subexp"><li class="basic" style=""><span style="">As OpenDocument and later PDF as well</span></li></ul></li><li class="col" style=""><span style="">NEWS</span><ul class="subexp"><li class="basic" style=""><span style="">Latest news around the game (coeer and gamer)</span></li></ul></li><li class="col" style=""><span style="">README</span><ul class="subexp"><li class="basic" style=""><span style="">Includes installation instructions and general gaming guidelines</span></li></ul></li><li class="col" style=""><span style="">ArgoUML diagram</span><ul class="subexp"><li class="basic" style=""><span style="">For visualization of the class structure</span></li></ul></li><li class="col" style=""><span style="">FreeMind document</span><ul class="subexp"><li class="basic" style=""><img src="Browser-Game.html_files/icons/ksmiletris.png" alt="ksmiletris"/> <span style="">...</span></li></ul></li><li class="col" style=""><span style="">THANKS</span><ul class="subexp"><li class="basic" style=""><span style="">All people helped in some direct or indirect way, less or more.</span></li></ul></li><li class="col" style=""><span style="">minmap_yyyymmdd.html</span><ul class="subexp"><li class="basic" style=""><span style="">Exported FreeMind maps to HTML with CSS and JavaScript</span></li></ul></li></ul></li></ul></li><li class="basic" style=""><span style="font-size:100%;font-weight:bold;">Folding of the code</span></li><li class="basic" style=""><span style="font-size:100%;font-weight:bold;">Tabs and spaces</span></li></ul></li></ul></li></ul></div></body></html>