1

Greetings all. Its been a while since i've released anything, but here goes. This package includes both a server and a client ritten in python, that can be used to write your own online games. The package includes a full area system, movement system is already coded in with full 360 rotational movement, etc. The very start to a space system is coded but the engine can be expanded for you to add stuff like, say, ground vehicles. Their's no sounds with the client as you'll need to provide those yourself, simply create a sounds folder and place sounds into their. The server includes 1 area example to get you started, while the client includes my menu class in case you want to use it in other projects. Make sure to read the readme before you ask questions or attempt to set the package up. Let me know if this is useful to you in anyway. And now the link. https://dl.dropboxusercontent.com/u/266 … 0engine.7z

Check out the new reality software site. http://realitysoftware.noip.us

Thumbs up

2

hello Danny
[wow] this is intristing, I need to pass it to one of my friend that understand pithon, hope he could do something cool with this one.
oh anyways, slitely out of topic, do you have any plan to return on developing audio games soon?, I know you are busy with your real life now.

Thumbs up

3

So I have only red the readme so far, but this is absolutely amazing, in many ways. I was also playing with the idea of creating my own engine, but I can probably throw that out the door now. I will see if I can add some more physics to the engine, think PyODE and see where it goes.

Roel
golfing in the kitchen

Thumbs up

4

O, just a quick question, why are you not using accessible_output2? From the testing I did with it on windows, it works very well with nvda and sapi.

Roel
golfing in the kitchen

Thumbs up

5

Just looking at this code makes me want to make an online game of some kind. nice job.

You can follow me on twitter, @cartertemm

Thumbs up

6

@post 4 because I happen to prefer using tolk, though i've already figured out with the help of thgamer how to enable sapi support. You can of course change stuff like that as said in the readme.

Check out the new reality software site. http://realitysoftware.noip.us

Thumbs up

7

[wow]... Damn I wish I could code... I have so many great ideas, and now this engine which makes things easier... I hope this will make things easier for people who can code in Pythan.

Best regards SLJ.
If you like the post, then please give it a thumps up.
Feel free to contact me privately if you have something in mind. If you do so, then please send me a mail instead of using the private message on the forum, since I don't check those very often.
Happy gaming... :D

Thumbs up

8

Hi,
This is looking like good stuff!

I think I would personally like to see more of a separation between the systems, so for example I could use pyglet instead of Pygame for example.

Any chance you could bung that on Github or something?

I've found at least one thing I'd like to fix, then I can submit pull requests and such.

Cheers, and keep up the good work.

Take care,
Chris Norman
Selling my soul to andertons.co.uk since 2012.

Thumbs up

9

I'm curious to see what this looks like. I'm going to give it a look-see, but first impression: why don't you put this on github? It's useful because you can accept pull requests from people and this is also something that employers and colleges (depending on how old you are) etc would love to see. Show your work!

Thumbs up

10

Just a few things:
First, check out pep8 and restructure your code for that. Use something like pylint to help you out.
Second, please please for all that is holy look up distutils or something similar and proper packaging. You could write a setup.py and this could be a library that's easy to install. Someone would just do
pip install onlinegameengine (you'd probably want something more descriptive or flashy) and you'd get the package that you could just import but you could also have pygame and twisted and whatever else you're using. I also recommend using something like gevent for networking, but that's just me.
your functions.py seems to use a lot of global vars intermixed with other vars and imports. Consider wrapping this up in objects and when needed just have an import that allows you to access the object's instance.
It might also be worth looking at using something like SQLAlchemy for your ORM. It lets you structure your objects in a relational mechenism and then you pretty much get out what you put in. It's cool because you can hook it up to sqlite for beginners or MySQL or any other rdb-like server that SA supports.
HTH,

Thumbs up

11

Hi,
I'd personally recommend using flake8 as your checker (pylint makes me suicidal).

Also, I personally use PBR for installing packages, here's the files I use:

<setup.py>
from setuptools import setup

setup(
    setup_requires = ['pbr', 'setuptools'],
    pbr = True
)

</setup.py>

<setup.cfg>
[metadata]
name =
summary =
description-file = README.md
home-page = https://github.com/chrisnorman7/
license = MPL-2

[tool:pytest]
testpaths = "tests"
addopts = "-xq"

</setup.cfg>

Obviously fill out the stuff in setup.cfg, and ensure your package is in a git repo.

HTH also.

Take care,
Chris Norman
Selling my soul to andertons.co.uk since 2012.

Thumbs up

12 (edited by danny 2016-11-22 07:57:58)

I didn't release it on github because I intended it to be a one release thing, more of something i'd just chuck out and say if you wanna improve on it or make your own games out of it go ahead, however I would be intrested in adding more coders to my own project using the engine and i'm intrested in releasing future engine updates with said coders, provided we didn't release any of the specific stuff that i've coded as open source such as the ground vehicle code and whatnot, i'm not entirely onboard with the idea of open sourcing the hole game. And thanks @post 11, i'll have a look.

Check out the new reality software site. http://realitysoftware.noip.us

Thumbs up

13

Alternatively for ORM, it's not been done yet, but I'm working on a sort of one-object-fits-all solution, where you can make objects dumpable just by setting properties. That might be of some help.

This forum has got me splitting everything off into packages to share stuff LOL.

Also, Pep8 is a hard woman to love! :-)

Take care,
Chris Norman
Selling my soul to andertons.co.uk since 2012.

Thumbs up

14

@Danny, the link to this engine appears to produce a 404 Dropbox error. Can you please reupload it?

Haters are who you should love and lovers are who you should hate.

Thumbs up

15

Yes please I want to check this out.

Bitcoin Address:
1MeNca7h6m8du4TV3psN4m4X666p6Y36u5m

Thumbs up

16

To bring this to the top, if someone could reupload it that'd be fantastic!

Thumbs up

17

I don't think anyone has it. I certainly don't; I have a computer that does but I'm not going to take to find it since it's probably beyond dead now since I never used it. smile

"On two occasions I have been asked [by members of Parliament!]: 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out ?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question."    — Charles Babbage.

Thumbs up

18

here you go:
https://www.dropbox.com/s/mo99hysesgcch … ne.7z?dl=1
I don't know how long I will keep this in my dropbox, so people who want the file should get it quickly.

Roel
golfing in the kitchen

Thumbs up

19

thank you.

Thumbs up

20

Hi Nightshade.
If you're looking to learn programming this is not really a good place to start. I like the idea of this but it's not really a thing for beginner's. However it will teach you some good technique.
On the other hand if your already a programmer it shouldn't be hard to recreate this on your own or build on what's already there.
If your wanting to make games, python is very easy to learn and use, both for beginners and experts alike.
Hth.

Guitarman.
Playing music and coding, are kinds of real world magic.

Thumbs up

21

Actually, as I understand it she's using it as a brushup tool to study and learn from more than as a kit of sorts or a platform.  She's already done a bit of coding in her spare time and hosted a few things, but for all intents and purposes she's trying to look at as many examples of other people's work before embarking upon her own endeavors.  to tell you the truth, I'm the one who's actually learning; she already knows how to mcjigger her way around linux which is steps waaaay ahead of me.  having three children though, has seriously put a damper on much of what we've wanted to do over the past few years.  Still, looking around never hurt a thing.

I do not know what my future holds, but I do know who holds my future.

Thumbs up

22

I never got this thing to run on my server.

I'm a cat! What's mine is mine, and what's yours is mine to :P XD

Thumbs up

23

Hi.
Sounds interesting, one of the best ways to learn, especially with programming is by example. For me at least, I can see the code in my head or see the way it should be written if it has a bug.
Don't ask me about linux though, I tried to load it once and almost ruined my computer lol!
@Nightshade, if you have questions, about python,please feel free to ask I'd be glad to help an up and coming programmer!

Guitarman.
Playing music and coding, are kinds of real world magic.

Thumbs up

24

Hi all,
I know python for like 5 months for now.
and i just started learnning networking in python so i picked twisted because it's easy and good for gamming.
i saw danny's engine it was helpful to me, i've learned a lot from it.
But i have a question:
there's a function in the server or client/function.py says
def left(string, number):
    newstr = ""
    for s in range(0, number):
        if s < len(string):
            newstr += string[s]
    return newstr

can someone explane it to me? Thanks in advance.

Thumbs up

25

As far as I can tell it's a really odd way to extrat characters from a string. Better to use string slicing as far as I can tell.

HTH

Take care,
Chris Norman
Selling my soul to andertons.co.uk since 2012.

Thumbs up