April 19, 2024, 10:55:35 pm

The Gang Garrison 2 Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

NOTICE: Wondering where all the forums have gone?

Join the community Discord server!

Pages: [1] 2 3 ... 77

Author Topic: Official PyGG2 Development thread  (Read 139607 times)

Orpheon

  • Moderator
  • *****
  • Karma: 15
  • Offline Offline
  • Posts: 6409
  • Developer
Official PyGG2 Development thread
« on: August 25, 2011, 02:25:56 pm »

Here's the current source. Help is needed.

We've agreed on Python 2.7 as a main language.

Progress so far:



Hmm, let me just sum everything up.

The advantages of PyGG2:

  • Python is a "real" programming language, unlike GML. This gives us a better chance to market the game to for example get it featured on steam. AKA more users.
  • Python is free, unlike GML. This means that everyone can contribute code without having to "buy" Game Maker. AKA more contributors
  • PyGG2 will have better performance than GG2, simply because Python is way faster than GML and the programmer is free to optimize in any way he wants. AKA more speed and less lag
  • Because Python's object system is better designed for large systems than GML's and we have full control over the system it is easier to keep the code clean and maintain the game. AKA less bugs
  • Because Python is faster and allows for more complex systems than GML it is easier to implement lag compensation. AKA less lag
  • PyGG2 is built up from the ground allowing us to revise previous not-so-wise design decisions (major one: UDP vs TCP). AKA less lag, less bugs
  • Because Python runs on every major platform, and so will PyGG2, PyGG2 can be run on Windows, Linux and Mac. AKA more users
  • And by far the most important one, because PyGG2 runs on every major platform and we can run the game engine without the graphics engine in PyGG2 (we couldn't do this in GML due to the way GML works) we can run dedicated servers. AKA A HELL OF A LOT LESS LAG


The disadvantages of PyGG2:

  • It takes a lot of time to develop, but Orpheon and I are working on it

Posting so I can follow, but AJF and Orph, is python easy to learn if you've had minimal Javascript, batch, and GML programming experience?
Differences between Python and GML:
(click to show/hide)
I think that like covers most of the basics.


Old post:

Previous discussions:
I ported GG2 to Mac successfully!
Gang Garrison Dedicated Server (in Python)
Medo's try with JGang (and a C++ engine, if you read the thread)
Recent request about a console-based dedicated server that kinda spiralled into a discussion about this
Ajf's main thread about this (Beta tester forums)

Those are only those I just found now, I probably missed a few.


Important quotes from those discussions I followed:

(click to show/hide)
« Last Edit: April 19, 2012, 03:16:05 pm by Orpheon »
Logged

Mr.L

  • Guest
Re: Porting GG2 to another Language - New Thread
« Reply #1 on: August 25, 2011, 02:32:03 pm »

We (I and Nagn) will take interest and participate in such a project.

We were deciding on C++ with the 2dbox engine

srry L.
NOTE THAT YOU'RE GOING TO HAVE TO INSTALL PYSFML. SINCE THIS IS AN UNSTABLE LIBRARIES, EASY TO DISTRIBUTE WAYS TO INSTALL IT IS NOT AVAILIBLE (atm).
Installers should come soon! But they're not here yet :z4:
HOW TO RUN PyGG2 ON WINDOWS

1) INSTALLING PYTHON 2.7

Download Python 2.7

Install it to "C:\Python27".
Go to "controlpanel>System>Advanced>Environment Variables".

In the "System Variables" box, click on "Path", then click "Edit".
In the "Variable Value" box, add to the end: ";C:\Python27;C:\MinGW\bin".
Click OK, then OK again in the system menu.

2) INSTALLING PIL, PySFML AND MINGW

Download and install PIL
Download and install PySFML
Download and install MinGW

3) INSTALLING PYGG2 AND BITMAP EXTENSION

Download and unzip: PyGG2

Move the folder to My Documents and rename it to "PyGG2".

Go to command prompt (start>accessories>command prompt) and type "cd " (with a space after cd).
drag the PyGG2 folder into the command prompt window and press enter.

Type in "python make.py build" and press enter.

After it is finished, exit command prompt.

4) MAKING PyGG2.bat

Go to notepad (start>accessories>notepad).

Type the following, but change <USER> to your computer's username.

cd "C:\Documents and Settings\<USER>\My Documents\PyGG2"
python make.py testclient (for launching the client)


Click file>save, and in the "File Name" box, type "PyGG2client.bat", and set the "Save as Type" box to "All Files".
Save it wherever you like.

Create another notepad file

cd "C:\Documents and Settings\<USER>\My Documents\PyGG2"
python make.py testserver (for launching the server)

Click file>save, and in the "File Name" box, type "PyGG2server.bat", and set the "Save as Type" box to "All Files".

And you're done! Whenever you want to run PyGG2 client, you just have to open PyGG2client.bat, but make sure to run PyGG2server.bat first
If you want to update PyGG2, just repeat delete the PyGG2 folder in My documents and repeat step 3.


-Orpheon: Updated it a bit-
« Last Edit: September 18, 2013, 01:52:27 pm by Orpheon »
Logged

Vindicator

  • Developer
  • ******
  • Karma: 84
  • Offline Offline
  • Posts: 2398
    • http://www.kylemoy.org/
Re: Porting GG2 to another Language - New Thread
« Reply #2 on: August 25, 2011, 04:03:38 pm »

Orpheon, if you would like to gather some people to work with python, I could help out.
Logged

Orpheon

  • Moderator
  • *****
  • Karma: 15
  • Offline Offline
  • Posts: 6409
  • Developer
Re: Porting GG2 to another Language - New Thread
« Reply #3 on: August 26, 2011, 03:21:42 am »

@Vindicator: Would you also be available for C++? I'm not saying we have to do that, I'm just asking whether you could.

@NAGN and L: Same thing. Could you guys imagine doing it in Python?
« Last Edit: February 16, 2024, 04:36:01 pm by MedO »
Logged

Super Sgt. Brown

  • Guest
Re: Porting GG2 to another Language - New Thread
« Reply #4 on: August 26, 2011, 04:54:33 am »

People, before doing teams and what-not, you should agree on which language you're going to use.

Either use C++ or Python. Not both, darn it.  :z8:
Logged

Derpduck

  • 2011 Haxxy Finalist
  • *
  • Karma: 42
  • Offline Offline
  • Posts: 5752
Re: Porting GG2 to another Language - New Thread
« Reply #5 on: August 26, 2011, 05:02:32 am »

This would be a good oppertunity to learn some other languages

Orpheon

  • Moderator
  • *****
  • Karma: 15
  • Offline Offline
  • Posts: 6409
  • Developer
Re: Porting GG2 to another Language - New Thread
« Reply #6 on: August 26, 2011, 06:42:17 am »

People, before doing teams and what-not, you should agree on which language you're going to use.

Either use C++ or Python. Not both, darn it.  :z8:
To know what language we use, we need to know who can work on it in what language.
That's the main factor in the choosing of the language.

Personally, I think I vote for Python. I know it much better than C++, and prefer it.

Also, if Flaw every re-appears, I think he'll prefer Python too.


Next question: Do we all agree on the library pygame?
Or are there other propositions?
« Last Edit: August 26, 2011, 06:43:03 am by Orpheon »
Logged

la granja animale

  • Heroic Member
  • ****
  • Karma: 0
  • Offline Offline
  • Posts: 739
  • Hi.
Re: Porting GG2 to another Language - New Thread
« Reply #7 on: August 26, 2011, 09:23:51 am »

basically speaking, this thread is all about a plan to rewrite the gg2 engine into another language?
Logged

trog

  • member of intel's squad of garbagemen against the yakuza
  • Veteran Member
  • ******
  • Karma: 27
  • Offline Offline
  • Posts: 9758
  • i am uberdeath
Re: Porting GG2 to another Language - New Thread
« Reply #8 on: August 26, 2011, 09:42:55 am »

basically speaking, this thread is all about a plan to rewrite the gg2 engine into another language?
It's not like that's the thread title or anything...
Logged

PM me your apps for my clan

92% of people who see this will not
have the guts to repost it. When Goku
died in the explosion Cell tied to destroy Earth with, he did it for you and me. If you're not ashamed to love Goku, post this as your status and show everyone. Thank you, Goku. I lifted up my arms for the spirit bomb every time you asked for my energy.

Mr.L

  • Guest
Re: Porting GG2 to another Language - New Thread
« Reply #9 on: August 26, 2011, 11:57:27 am »

The pythons that's ok too though I want to work on C++, but I'm mediocre at both so no real preferences.

Isn't pygame the python sdl library?
Logged

Orpheon

  • Moderator
  • *****
  • Karma: 15
  • Offline Offline
  • Posts: 6409
  • Developer
Re: Porting GG2 to another Language - New Thread
« Reply #10 on: August 26, 2011, 12:28:51 pm »

The pythons that's ok too though I want to work on C++, but I'm mediocre at both so no real preferences.

Isn't pygame the python sdl library?
Ok, great.

And yes, it is.
Logged

Mr.L

  • Guest
Re: Porting GG2 to another Language - New Thread
« Reply #11 on: August 26, 2011, 05:18:32 pm »

I love you Orpheon.
Logged

Maxaxle

  • Full Member
  • ***
  • Karma: -128
  • Offline Offline
  • Posts: 398
  • Resident Serious Business
    • My Site
Re: Porting GG2 to another Language - New Thread
« Reply #12 on: August 26, 2011, 09:09:45 pm »

I don't mean to be rude, but what's the upshot of this? Faster compiling? Stability? Fewer glitches?
Logged

Mr.L

  • Guest
Re: Porting GG2 to another Language - New Thread
« Reply #13 on: August 26, 2011, 10:20:58 pm »

Well for starters it will be much more portable os wise and it will use a more powerful language.
Logged

Saniblues

  • Onion Knight
  • Administrator
  • *****
  • Karma: -1305
  • Offline Offline
  • Posts: 12206
Re: Porting GG2 to another Language - New Thread
« Reply #14 on: August 26, 2011, 10:57:28 pm »

Game Maker has to translate gml to a programming language the computer actually supports since gml isn't an accepted language on any operating system. I don't remember the exact order, or how many times it has to be translated for that matter, but the point is that with say, Java, you only have to do it once before reaching machine language.

Think of it like trying to translate Arabic to Japanese, then Korean, then Spanish before translating it to English. It'd be easier to just translate it from Spanish to English.

Java is universally accepted on most operating systems, so you can have it on multiple computers, even handheld devices if you want to get your hands dirty. It'd probably run faster too. C++ is in the same boat, which one is the better choice depends on the people making it. Rendering speed is debatable, but we'd be able to freely use vector graphics without having to worry about people with weaker vista computers since vectors in Game Maker is awful for some reason.
Logged
Quote from: mop
Quote from: MR MAGN3TIC
I don't like it.  :nah:
Oh, well, you might as well pack up and stop now, because he doesn't like it
I'm bored out of my skull, Lets play a different game!
Lets take a visit down below And cast the world in flames!

Pages: [1] 2 3 ... 77
 

Page created in 0.042 seconds with 50 queries.