Streaming UPBGE games to customers via a server removes cross platform issues / GPL

Ah ok i misunderstood this, thought you meant streaming a game from it. playing a streamed game with adsl will of course work without any (well depending if adsl has a good day or not haha) problems, the download is fast enough, and you are only uploading a few kb of text.

Yes you are right. i did not count the output you stream, my fault, counted textures/sounds but that not the case here.

Game streaming will be a market, and i think it already is.

  • But it will never take over.

Bruh, i want my games on my drive.

1 Like

I am with you for single player, or even co-op games like halo 2 etc.

however - for online FPS - Planetside 2 etc - It removes the whole cheat factor,

also for openworld games with the ability to build, you don’t need to stream every change across the web - everyone lives on the same server and only a videostream goes out, and a control stream comes in.

I actually see people hanging out in game, making games one day,
(a bit like secondlife)

And introduce a ton of latency. Sorry it aint happening unless you have hosting servers every 100km.

There are other ways to combat cheating, AI might be able to cripple it.

The only games where streaming games would be viable are games that dont rely on latency, and are mostly played online. Such as TBS, or slower RTS games.

It seems like you’re talking about an MMO, so lets take WoW as an example. This game would also suffer greatly, such as if a player spams A D A D A D etc., the player would appear to be flashing back and forward, which was a problem for a long time when you used speed buffs.

This video illustrates this perfectly. This is simply a player with a high ping.

If cheating is such a big concerns to you, then i’d instead argue in favour of AI. Feed an AI thousands of clips of hackers and cheaters, then use a “suspect” system. Where a player feeds the AI a single frame every 5 seconds, and if the AI at any point suspects the player is cheating, then it demands more frames, such as every 1 second, and so on.

What cheats can not be death with this way? Farming bots can easily be detected, wall hacks can be detected, aim bot can be detected, general hacks like inf ammo, rapid fire, movement speed, etc. can also easily be detected.

The community has managed to deliver some decent improvements with the UPBGE fork, but the engine is still not going to have a strong pull for developers if the idea is having them do some costly and complicated cloud-streaming scheme if they don’t want to distribute the raw .blend files to anyone who buys their game.

In other engines, a secure package is just a matter of clicking export and going through the settings, very simple.

Now if you don’t care about money and are willing to bundle the source with the executable, then yes, UPBGE will do fine.

Can you come up with a working proof of concept? @BluePrintRandom

Everyone complains about GPL as if its a major issue, but ignore the fact that all of the addons on the Blender Market are licensed under GPL (some of which have $100,000+ revenue).
You are likely the only prominent distributor for your game until it becomes big and mainstream, and at that point people will pirate it anyway regardless of the license.

As mentioned before, measures to separate data from launcher are available, and streaming anything internet related through UPBGE / BGE has always been a primitive nightmare.

you don’t understand

GAAS / cloud games are hosted on a server and input is fed into it from the player, and a video stream is sent back.

there is no way to hack this / crack it/ unless it’s cracking a account online
(and it’s easy to check for duplicates)

Or just use statistics of players with a few if cases.

the recent news from other ge(unity/unreal) has brought SpatialOS to my attention, it appears to offer a solid cloud based gaming structure for any game engine (literally taken from their website)

perhaps this can be of some relevant use? Or you know , there’s Web Ass embly for instance godot /armory / unity etc etc is already supporting

Can you come up with a working proof of concept? @BluePrintRandom

my game is already setup to pipe inputs to actors,

I would likely just move the control script into a stand alone blend, and then use video texture for the screen,

however I am not at the “it’s fun enough to justify this” stage.

right now It’s fun however I am having trouble getting time to create content.

as WKnight02 showed, there was never a problem with gpl, the problem is with people not knowing how to code and keep propietary content away from blends. this is a logic brick problem, and a problem with blender being a bit limiting in using external files, instead keeping everything in the same blend. the only thing we need is for blender to be able to save part of it’s data in a different file from the code, but logic bricks are tied to objects, same (i think) with animations.

loadLib can be used to load a blend containing models. textures can be taken from files in folders, or kept in those blends. the same happens with maps. a script will just replaceMesh with the actual game models, the others being just simple blocks to tie to logic bricks.

the only things that you need to share is the main blend wich contains the code, maybe the animations, some essential models, and sounds (this is another limitation of blender, it is a modeling tool and so it doesn’t give much importance to sounds, there is no sound window and sounds can’t be imported to be used in a logic brick, nor is it posible to execute a sound actuator in another object from python, but the sounds in a folder are still yours and not part of the blend).

the models, textures and maps made by you would continue to be your property, and not gpl.

there are many gpl games: quake, doom, i think rage. the code is gpl, but the models, textures, sounds, story, characters, animations and maps are not. they are property of id software (and now bethesda), and so you have to buy the game to play it.

If you keep everything in the blend then it’s still your property. It’s when you combine the blend with the blenderplayer that it inherits GPL. People didn’t want to keep the blend separate from the executable because it made their assets easy to access.

The other side of the argument is that anything that requires something with GPL to function becomes GPL itself. So, if you can’t run your game logic independantly without Blender then you’re subject to GPL, regardless of how separate the files are. The moment you write “import bge”, you’ve crossed that line.

Presumably, BPR’s plan wouldn’t prevent Joe Bloggs from being able to request the source code anyway.

many games allow you to access the files, that’s how modding started, people making their own doom maps, and came to today when people make and use mods for skyrim.
i understand that people wouln’t want their files to be accessed, like with a multiplayer game, or to prevent people from stealing assets for their own crappy unity steam games. but that’s why you make a game unique in the first place, you have to become liked by the public and make fans of your game, you are not selling a bunch of assets, a game is much more than that, it is the combination of mechanics, story, characters, game/level design, or style that matters, you make a first one and then earn making sequels to it or making other games. and if you don’t, no one will care to steal from you unsuccesful game, so there’s nothing to be worried about. if they want to steal your assets, they will do it, regardless of the amount of encryption you put into it. it has been done already with AAA games.

i can see it as an argument for multiplayer games tho. that is a point that has to be addressed by bge developers. for now, single player games are better in bge over multiplayer ones. but again, of the games i mentioned, half of them are multiplayer and so are the games made with their engines (quake 3, doom, urban terror, ufo:ai, and many more of wich i don’t remember their names right now), so maybe you could use a different engine instead of bge?

images, sounds, models and animations are not subject to gpl. quake 3 can not run without it’s assets, take a look at it and you’ll see that it imports sounds and assets from the source code. that is no different from a blend file importing or linking files or even keeping them in itself. there is precedent of images that are part of a program being proprietary, like the blender logo itself. as for the code, that will always be gpl, you can’t change it. if you want your code to be proprietary, go and writte it yourself from scratch if you are so good at coding that you made something nobody else has done before and have no need of help from others.:sunglasses:

Go write what from scratch, a new game engine? Under the second interpretation of the GPL licence, any Python code in the blend file that uses the bge library would inherit the GPL licence. I don’t understand why you are comparing code quality/complexity to whether or not it gets covered by the GPL licence.

Tech challenges aside, here’s an example from Blender Conf 2017. No source code is being distributed by the business / site AFAICS.

Want to run UPBGE in Google’s cloud?

Edit: Much longer video, but with a lot of different people (CEO, R&D Lead Designer, etc) talking about the platform and what they did with it, it’s amazing lol: