BGEz - Full Python game projects

( #1

Hi everyone !

So, right to the point: I made somewhat of a Python alternative API for the BGE, its some kind of framework which aims at making the development of games inside the BGE more maintainable and organized, so that it much much much more looks like a true Python project, as if it was piloting the BGE.

GitLab project:
Demos made with the framework:
Minigame for the BGMC26:

This project is meant to grow with your help.

What I need now is your input, I need you to eventually use it and break it, so that we can work to improve the things.
This project is not perfect yet, I’m not sure we can even get to perfection, but it can certainly be better for everyone.

Also keep in mind that this project is rather Python-heavy, the point is to have real Python project-like that would be really organized. This way the game sources can be versionned and maintained a bit easier.

I wrote a bit of documentation and plan to write more now, so I’m sorry if its not really fully documented, but I’m working on it. This is a work in progress and I need your help !

If you have any questions about something that sounds really unclear about the goal of the framework, about its actual practical use, anything really: I’m here to help you through !

(BluePrintRandom) #2

you should post a screencast of yourself using the framework to make a game.

(like for bgmc or a microgame etc)

(Lostscience) #3

does that mean I could I put some one my python chatbot into a videogame?

( #4

Can you be more specific ?

(Thatimster) #5

If you want to get this fully implemented it could be a good idea to talk to the UPBGE team!

(Lostscience) #6

I meant could I put this python chatbot into a videogame with this?

name =input(" who are you? ")
print("How are you " + name + "?")
friendly =input(" what is your friend's name? ")

print("I have a friend named luke.")
print("what does " + friendly + " do for a living?")

without much modification.:confused:

(Nicholas_A) #7

Putting a chatbot like that into a blend would be no problem but why would anyone want to put something so simple as that into a game? If you could make a neural network which forms responses based on human responses, now that would be interesting.

(Lostscience) #8

I could add more to it.And i think it would be cool in a videogame.I am really into chatbots.I want to incorporate one into a videogame.
that is why i wanted to incorporate that python program.

( #9

Well, actually you can already use this snippet in a vanilla Python script… But you would have to play your game in the Blender Console so rip.

Actually, the framework is meant to design logic. But I didn’t implement any “easy” interface system yet. You could take a look at this:, its made by TwisterGE and it seems promising for uis !

(Lostscience) #10

that is okay you can get to it when you can.

(Nicholas_A) #11

I don’t think he said he was going to do it. He was saying that is, would force you to enter things into the console.

(Lostscience) #12

but he said

its made by TwisterGE and it seems promising for uis !

(Nicholas_A) #13

That was for a GUI. not a chatbot.

(Lostscience) #14

that is what I meant.

(Lostscience) #15

it eats the framerate.
i get a framrate of 6.6.

( #16

I have no idea what does eat your framerates, but as RedFrost said, I don’t really plan on making the GUI layer yet. I more hoped that someone like Twister or anyone really would make something and that I could get it to work by integrating it into bgez later (or provide any required adapter). But right now I’m looking at a way to write some documentation and add more features to make easier the writing of logic for a game.

One thing that could help me:

Can you try to write down some gameplay mechanic idea you would like to be able to do, but write it in the way you would like to have to write it (code wise). Its not that easy to come with, but seeing how you would want to have to write could help me and give me ideas on mechanismes to add to the framework (your input thing already gave me some ideas). I feel like only a few people want to give me some input, but its alright. I don’t know how to get the hype going anyway.

@BluePrintRandom: Would a video really help ?
I could do something, what do you use for recordings (on windows preferably) ?

(BluePrintRandom) #17

and it’s not for me particularly yet (until you get into multiplayer later)

some people just learn better from a narrated video.

(elmeunick9) #18

This is at last the third project I know that does exactly the same “Framework” thing, in fact, I did one myself:

( #19

I think when searching for an already existing solution, I already found your work !
Looks great, I’m looking at the sources a bit quick, I think I may have a deeper look in the following weeks… Lot of awesome work !
Although some things bug me out, but I haven’t gone through your system fully so I can’t really tell :slight_smile:

Do you mind if I inspire myself a bit from your work for some things ?

Update for bgez now:
I’m working on a demo using some of the work of martinsh, most of my time has been retro-engineering the few .blend that were still online, so far so good I must say ! Still a bit of work to do.

Also the core of bgez might change a bit, as I’m looking at a close but somehow different approach for logic execution.
Idk if people are really interested, but at the end of next week there should be some cool things, like some cool shaders easely importable (even in non-bgez projects), and a new way of processing logic within bgez.

(dynamic sun/sky from martinsh, easily importable !)

@elmeunick9: I will defenitely take a look at your work, but I felt like you did not approach the problem like I would have, hence my attempt :slight_smile:

@all: don’t expect huge weekly update/features, working alone on such a project is already taking all my time, and most features take me between 2 to 7 days to implement, and usually the feature may not seem huge, although the combination of all the work should be really useful. I’ll try to post here every 2 weeks at most, depending also on what happens with my other activities (as much as I would like it, I’m not living from Blender lol).

(elmeunick9) #20

Would you please explain which diferent aproches are you taking and why? Thanks.