Jump to content
MakeWebGames

OpenTribes


BlackScorp

Recommended Posts

Hello guys,

i would like to present my project OpenTribes.

OpenTribes is a Strategy Browserbased games which is similar to tribalwars.

My Personal goal on this Project is to learn and practise the Clean Code Architecture

http://blog.8thlight.com/uncle-bob/2012/08/13/the-clean-architecture.html

Technical Details:

I test the code base with Behat and Mink. So i describe a feature i want to implement in a Domain Specific Language https://github.com/Opentribes/Core/blob/develop/features/Account/create.feature

after, behat generates a code skeleton which i can fill and test if my code is running without errors.

Then i reuse this feature with another Context and Mink. Mink allows you to run a headless browser instance and you test your front end

https://github.com/Opentribes/Core/blob/develop/features/bootstrap/silex/UserHelper.php#L40

you have methods like fillField, pressButton visit($url) and so on and you can assert if a div with class xyz is existing inside HTML Document

As delivery mechnism I'am using Silex and Symfony Components

Also you can create Modules which can overwrite just everything(every controller,template or other class) thx to the Dependency Injection Container. The Modules can be installed later over composer.

As Template Engine, i use Mustache

Currently not really much works ingame, just login/registration/activate account.

And here is the Code https://github.com/Opentribes/Core

Everything is under MIT License, so later you schould be able to reuse the code and even remove the copyrights from the site

If you have any questions just ask:D if you found any issues on code, post them on github issue tracker.

Best Regards and sorry for my bad english grammar

Link to comment
Share on other sites

well it is not just a simple login/register/home page. as i told every input is tested automated my purpose is not to show a game, but a code. my goal is to provide a browsergame on professional level.

for example, thx to the Repository Design Pattern iam able to replace any database engine(currently used mysql) to another with less efford.

Companies like innogames pays money for consulting http://blog.innogames.com/a-fluffy-qafoo-training to create games this way.

nvm i gues i made a mistake to post it here too early, i just expected that some Developers would do a little bit codereview and point me to some mistakes in early stage, so i would have less refactoring later.

Link to comment
Share on other sites

  • 2 weeks later...

Hello guys,

view weeks are passed and i wanted to announce some Updates.

Now if you login into game, you can create a city, after the city is created you can view your neighbours on a Map.

Also i added now a logout button :D

Next iam going to implement the Building feature, which means you can gather resources and upgrade your buildings. so stay tuned;)

Best regards

Link to comment
Share on other sites

well it depends on your operation system,

if you use mac or linux, you just require php 5.4, composer and git, after cloning you can call make install-dev in command line and your game is setup. its also possible on windows but windows users dont user cmd.exe usually. howeever, on windows if you have xampp installed, you can install composer for windows. then you just add the xampp/bin folder in enviroment path and call this commands https://github.com/Opentribes/Core/blob/develop/Makefile#L14-L21 in your cmd.exe thats it

 

about cucumber, this is the core, the core should be tested, i will add a dummy module where an avarage programmer will just hack in and do his own plugins, if he want to implement unittests and behat, he can, if not, its ok :D the plugins can be made like the avarage programmer can programm

Edited by BlackScorp
Link to comment
Share on other sites

well it depends on your operation system,

if you use mac or linux, you just require php 5.4, composer and git, after cloning you can call make install-dev in command line and your game is setup. its also possible on windows but windows users dont user cmd.exe usually. howeever, on windows if you have xampp installed, you can install composer for windows. then you just add the xampp/bin folder in enviroment path and call this commands https://github.com/Opentribes/Core/blob/develop/Makefile#L14-L21 in your cmd.exe thats it

 

about cucumber, this is the core, the core should be tested, i will add a dummy module where an avarage programmer will just hack in and do his own plugins, if he want to implement unittests and behat, he can, if not, its ok :D the plugins can be made like the avarage programmer can programm

Some IDE's such as PHPStorm handle Composer very well, simply open up the terminal and type "composer install"

Link to comment
Share on other sites

i know, but not everybody uses PHPStorm, i personally use Netbeans + Cygwin , well maybe someone want to contribute and create a wiki how to install it locally? iam not a native english speaker and my english is not good at all, the words i use does not looks professional :D

Link to comment
Share on other sites

  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...