Open World Soccer Forum Index Open World Soccer
Community Forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Hello

 
Post new topic   Reply to topic    Open World Soccer Forum Index -> English
View previous topic :: View next topic  
Author Message
mkko



Joined: 16 May 2008
Posts: 15

PostPosted: Sun May 18, 2008 2:04 pm    Post subject: Hello Reply with quote

Hello to all,

I found my way here from the Yoda Soccer pages. I'm sort of a SWOS fan whenever I have the time -- nowadays haven't had much though. I'm also enthusiastic programmer and I've used mainly C++ in my studies (of computer science) for about a four years now. I'd like to offer my assistance, if you needed any.

I don't know about your plans or actually anything about the project (except that it is targetted to be a portable SWOS clone and that I'd be excited to take part) but I was thinking of asking if you had some plans about the architecture. I don't mean to offend you, but the first glimpse didn't reveal any particular structure. I just thought that having a bit more modular approach would make the development easier in many ways.

Here are some profound (and major) issues I think I found:
  • Encapsulation: No private variables or functions in classes (at all)
  • Generics: No iheritance was used (I don't know if this was intentional though)
  • Readability: Variables tell nothing at first glance due to their names (ht, pa, ta, sp)
  • Encapsulation/readability: Data seems to be quite unstructured in many ways
  • ...and the fact that these were my observations only after a 15 minute glimpse

According to the comments in the code you are simply translating the game from that BlitzMax/Blitz Basic to C++. I don't know about that BASIC language at all, but C++ requires some design to the architecture in order not to make it spaghetti code.

With all due respect, and I don't mean to mock you, this project needs a thorough design of an architecture before it can be expanded with all the nice ideas you have for the future. I'd like to help.

Once again, I apologise for any unintended rudeness
Mikko
Back to top
View user's profile Send private message
Massimo32
Site Admin


Joined: 11 Nov 2007
Posts: 177
Location: Bolzano, Italy

PostPosted: Sun May 18, 2008 6:50 pm    Post subject: Re: Hello Reply with quote

mkko wrote:
Hello to all,

I found my way here from the Yoda Soccer pages. I'm sort of a SWOS fan whenever I have the time -- nowadays haven't had much though. I'm also enthusiastic programmer and I've used mainly C++ in my studies (of computer science) for about a four years now. I'd like to offer my assistance, if you needed any.


Hello Mikko and welcome! Smile

mkko wrote:

I don't know about your plans or actually anything about the project (except that it is targetted to be a portable SWOS clone and that I'd be excited to take part) but I was thinking of asking if you had some plans about the architecture. I don't mean to offend you, but the first glimpse didn't reveal any particular structure. I just thought that having a bit more modular approach would make the development easier in many ways.


I agree with you. There are many reasons for that:
- at present I'm (almost) simply translating code from Yoda Soccer, the purpose is to have a demo (as soon as possible) in order to verify the interest of the people in the project and possibly find some help
- Yoda Soccer was written in Blitzbasic which is not object oriented and only recently rewritten in Blitzmax which allows OOP
- I'm actually learning C++ (since 1 year in the free time)

mkko wrote:

Here are some profound (and major) issues I think I found:
  • Encapsulation: No private variables or functions in classes (at all)
  • Generics: No iheritance was used (I don't know if this was intentional though)
  • Readability: Variables tell nothing at first glance due to their names (ht, pa, ta, sp)
  • Encapsulation/readability: Data seems to be quite unstructured in many ways
  • ...and the fact that these were my observations only after a 15 minute glimpse

According to the comments in the code you are simply translating the game from that BlitzMax/Blitz Basic to C++. I don't know about that BASIC language at all, but C++ requires some design to the architecture in order not to make it spaghetti code.


I'm aware of the problems you pointed out (I think there're also others...). After the demo is ready (it lacks only the collisions with the goalkeeper) I plan to spend some time to clean and restructure the code... and help is welcome!

mkko wrote:

With all due respect, and I don't mean to mock you, this project needs a thorough design of an architecture before it can be expanded with all the nice ideas you have for the future. I'd like to help.


If you spent your time to post your impressions, it means that you're really interested and want to help and this is what we're searching for Smile

Massimo
Back to top
View user's profile Send private message
mkko



Joined: 16 May 2008
Posts: 15

PostPosted: Tue May 20, 2008 1:35 pm    Post subject: Re: Hello Reply with quote

Massimo32 wrote:
Hello Mikko and welcome! :)

Thank you :)

Massimo32 wrote:

I agree with you. There are many reasons for that:
- at present I'm (almost) simply translating code from Yoda Soccer, the purpose is to have a demo (as soon as possible) in order to verify the interest of the people in the project and possibly find some help
- Yoda Soccer was written in Blitzbasic which is not object oriented and only recently rewritten in Blitzmax which allows OOP
- I'm actually learning C++ (since 1 year in the free time)
Massimo32 wrote:
I'm aware of the problems you pointed out (I think there're also others...). After the demo is ready (it lacks only the collisions with the goalkeeper) I plan to spend some time to clean and restructure the code... and help is welcome!

I'm glad to hear that this was intended. In fact, I was pretty shocked when looking at the source code for the first time ;) After realizing that it was only BASIC being written in C++ I was somewhat relieved. Anyways, I have no idea how these open source projects are being developed in practice or how to ensure the portability of the game, but I'd be thrilled to help. I've always wanted to be a game developer :)

I use mainly OS X but I have also an old Windows XP workstation. As I previously mentioned, I've been using mainly C++ (and some C). I also know Java, C# and some scripting languages like shell scripting, Python and Perl and also have tried many other languages such as Objective-C, Common Lisp, Fortran, or some others I can't recall at the moment.

May I ask if you have any plans regarding the future design of the game written down? I just thought I'd like to start throwing ideas about the structure.

Last autumn I took a game development course at our university. The exercise on the course was to create a demo of some idea for a game in pairs. We decided to make a side-scrolling real-time version of Scorched Earth. We found that game update logic was pretty good idea to make state based. We had game states (or "screens" as we named them) for main menu, gameplay screen and for test purposes. We could've had different settings screen also, but we used the main screen for any settings. A screen naturally was a hierarchical structure that could've had an overlay screen (a pause state for instace). I just thought I'd mention this as it worked pretty well for us.
Back to top
View user's profile Send private message
Massimo32
Site Admin


Joined: 11 Nov 2007
Posts: 177
Location: Bolzano, Italy

PostPosted: Tue May 20, 2008 10:31 pm    Post subject: Re: Hello Reply with quote

mkko wrote:

Anyways, I have no idea how these open source projects are being developed in practice

For Yoda Soccer I was the only programmer: even if the source code was available, the Blitzmax compiler is not free software.
Then Yoda Soccer cannot be considered a real open source project, but a project of two persons: Daniele and me.
Nevertheless, we received a lot of contributions in terms of translations, database, team kits.
I hope that C++ will allow OWS to develop into a community project.

mkko wrote:
or how to ensure the portability of the game,

Using Blitzmax solved the problem of portability for Yoda.
For OWS, I hope that the combination C++,SDL & OpenGL will help the portability, but I only have a Linux version so far.

mkko wrote:
but I'd be thrilled to help. I've always wanted to be a game developer Smile


So you do like game development and SWOS? What a dangerous mix! Very Happy

mkko wrote:

I use mainly OS X but I have also an old Windows XP workstation. As I previously mentioned, I've been using mainly C++ (and some C). I also know Java, C# and some scripting languages like shell scripting, Python and Perl and also have tried many other languages such as Objective-C, Common Lisp, Fortran, or some others I can't recall at the moment.


Starting from C64 basic, I've experienced (at varying degrees) languages as C, Pascal, Assembler x86, Python, PHP, Bash and others. Now I would like to improve my C++ skills and experience with OOP.

mkko wrote:

May I ask if you have any plans regarding the future design of the game written down? I just thought I'd like to start throwing ideas about the structure.


There's nothing written so far. Yoda Soccer code will help with algorithms, but not for the general structure that still need to be defined.
I'm trying to get some ideas from other linux games, (e.g. PPracer)
For example I would like to use a scripting language for the menu, but I'm not sure of that.

mkko wrote:

Last autumn I took a game development course at our university. The exercise on the course was to create a demo of some idea for a game in pairs. We decided to make a side-scrolling real-time version of Scorched Earth. We found that game update logic was pretty good idea to make state based. We had game states (or "screens" as we named them) for main menu, gameplay screen and for test purposes. We could've had different settings screen also, but we used the main screen for any settings. A screen naturally was a hierarchical structure that could've had an overlay screen (a pause state for instace). I just thought I'd mention this as it worked pretty well for us.


Then you already have some experience with game development, that's nice! Smile
Back to top
View user's profile Send private message
mkko



Joined: 16 May 2008
Posts: 15

PostPosted: Tue May 20, 2008 11:28 pm    Post subject: Re: Hello Reply with quote

Massimo32 wrote:
mkko wrote:

Anyways, I have no idea how these open source projects are being developed in practice

For Yoda Soccer I was the only programmer: even if the source code was available, the Blitzmax compiler is not free software.
Then Yoda Soccer cannot be considered a real open source project, but a project of two persons: Daniele and me.
Nevertheless, we received a lot of contributions in terms of translations, database, team kits.
I hope that C++ will allow OWS to develop into a community project.

That's nice. I think giving the gamer the possibility to twiddle with the graphics, team database and such, without requiring any knowledge of programming, would increase the odds of getting people interested in the project. I guess two is not yet a community, but is three already?
Massimo32 wrote:

mkko wrote:
or how to ensure the portability of the game,

Using Blitzmax solved the problem of portability for Yoda.
For OWS, I hope that the combination C++,SDL & OpenGL will help the portability, but I only have a Linux version so far.

I actually ment in more practical terms, how to not keep multiple parallel source trees in sync and such. I just couldn't put it in words first time. I'm confident in the libraries, as there are successful projects that rely on those.
Massimo32 wrote:

mkko wrote:
but I'd be thrilled to help. I've always wanted to be a game developer :)

So you do like game development and SWOS? What a dangerous mix! :D

Luckily I have my "conscience" keeping me in line, so how could I fall for any traps? ;) She's done pretty thorough job so far.
Massimo32 wrote:

There's nothing written so far. Yoda Soccer code will help with algorithms, but not for the general structure that still need to be defined.
I'm trying to get some ideas from other linux games, (e.g. PPracer)
For example I would like to use a scripting language for the menu, but I'm not sure of that.

I tried learning from the OpenTTD, but there just were too many files and too many things I didn't quite get. The scripting language would be nice, but I'd guess it wouldn't be too hard to create them ourselves if nothing suitable can be found.
Massimo32 wrote:

Then you already have some experience with game development, that's nice! :)

Well we did a racing game in a group of eight for some other course also. It didn't help as much as the previously mentioned as it only taught how difficult it is to agree on something with a group larger than three ;) I was mainly responsible for the game physics. For some reason we did not use any library. I think it might have been that there was none at the time for C#/XNA.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Open World Soccer Forum Index -> English All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group
Get Open World Soccer at SourceForge.net. Fast, secure and Free Open Source software downloads