[WIP] PyDoom! GZDoom with Python scripting

Projects that have specifically been abandoned or considered "dead" get moved here, so people will quit bumping them. If your project has wound up here and it should not be, contact a moderator to have it moved back to the land of the living.
User avatar
Kate
... in rememberance ...
Posts: 2975
Joined: Tue Jul 15, 2003 8:06 pm

[WIP] PyDoom! GZDoom with Python scripting

Post by Kate »

So, everyone is posting about their GUI libraries and ACS endeavors, I figured I would announce this as I'm working on it.

Well, what else is there to say? It's GZDoom, but with Python 3.3 as a scripting language. With native string support, classes and objects, generators and functions, dictionaries and lists, it should enable you to do a lot more than ACS currently can, due to the fact that it's leaps and bounds more capable than ACS is.

The interpreter currently lives outside of the game scope, and I intend to take full advantage of this by adding the ability to interface with the menu and console and even the intermission, so your scripts can reprogram many different parts of the game and become an integral part of it, outside of the level scope that ACS currently lives in.

There will be Capsules, special dictionaries which store information with the map, hub, and game (like the [wiki=Scope]ACS scopes[/wiki]), and even the player - which allows mods to persist script info between games, like a per-player mod-dedicated configuration file. I will document them as I add them.

Update: This project has been abandoned and is no longer available. Sorry!
Last edited by Kate on Wed Jul 02, 2014 1:28 am, edited 7 times in total.
User avatar
Nash
 
 
Posts: 17487
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Nash »

As a modder, what crazy features do I have access to with PyDoom that I can't do with GZDoom? For example, does it open up the game like VavoomC does?
User avatar
BouncyTEM
Posts: 3822
Joined: Sun Aug 24, 2003 5:42 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: 2280 Lol Street: The Calamitous Carnival (formerly Senators Prison)

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by BouncyTEM »

To quote Kate from the IRC for you:
I do intend to go a lot farther with Python than ACS already has access to using structured modules, so you can directly access things like actors, sectors, and lines without requiring explicit tags or ids, and also plan to add some non-level stuff like the currently hardcoded intermission to make it easier to replace/modify rather than having to supply your own mapinfo and level to do it. Being able to define your own behavior for actor class types, custom action functions of course, being able to read certain level properties, usually mapinfo stuff, that ACS doesn't yet have the ability to read because of its' inability to receive strings, and that's a bunch of what's on the todo so far.
Basically, it's a Doomscript. =P
User avatar
Mikk-
Posts: 2274
Joined: Tue Jun 30, 2009 1:31 pm

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Mikk- »

What's with all of this awesome stuff being posted on the forum as of late? Blackfire? PyDoom? DH-acc?
User avatar
BouncyTEM
Posts: 3822
Joined: Sun Aug 24, 2003 5:42 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: 2280 Lol Street: The Calamitous Carnival (formerly Senators Prison)

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by BouncyTEM »

Enough people getting fed up with Graf's constant <no's> of useful features because of personal preference the lack of abilities for mods to do what they want so people taking it upon themselves to make the features possible? :P
Gez
 
 
Posts: 17939
Joined: Fri Jul 06, 2007 3:22 pm

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Gez »

Only PyDoom (and Tower of Babel) will fit that one since both others do not modify G)ZDoom.

Looking at CIA commit messages, it seems you're cherry picking bugfixes but aren't otherwise keeping up with the ZDoom codebase, are you?
User avatar
Apothem
Posts: 2070
Joined: Sat Nov 29, 2003 7:13 pm
Location: Performing open heart surgery on an ACS compiler.

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Apothem »

Bouncy wrote:Enough people getting fed up with Graf's constant <no's> of useful features because of personal preference the lack of abilities for mods to do what they want so people taking it upon themselves to make the features possible? :P

I always liked to think of it as "Pushing the limits". Simply because....... Well WHY NOT?!
User avatar
Kate
... in rememberance ...
Posts: 2975
Joined: Tue Jul 15, 2003 8:06 pm

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Kate »

To be honest, yeah, I'd rather not try and keep up with the current ZDoom, because it usually updates so fast that I'd spend more time patching than I would actually coding and when I start picking apart the internal systems, it'll only wind up slowing down progress if anything.

I'd rather a stable release than a bleeding-edge one. Everything I want to do will be covered by scripting anyway.

I should probably mention I spawned this out of requirement for scripting to advance another project I'm working on, called Dimension 72, probably never heard of off of IRC until now. So one can guarantee that I'll be extensively scripting what I can and that what I implement will be well-tested, at least. As for why I started with a recent revision instead of the release, the answer is because that was the revision I last used my 72 project on, so I can use 72 as testing material without backpedaling changes to make it work again.

When will I release? I'll release once I have some basic callbacks and modules implemented. It would be a waste to post binaries of a script that can only print to the console, so I'm first going to build a small library of essential built-ins so that it's easier to get a good idea of what this thing will be able to do, at least ACS-equivalent functionality, and see how others like it. If people like it, I'll keep updating.
Last edited by Kate on Sun Feb 26, 2012 7:09 pm, edited 1 time in total.
User avatar
printz
Posts: 2648
Joined: Thu Oct 26, 2006 12:08 pm
Location: Bucharest, Romania
Contact:

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by printz »

Pink Silver wrote:To be honest, yeah, I'd rather not try and keep up with the current ZDoom, because it usually updates so fast that I'd spend more time patching than I would actually coding and when I start picking apart the internal systems, it'll only wind up slowing down progress if anything.
Aah, I was hoping for an opportunity for people to stop using GZDoom and using PyDoom instead :mrgreen:
Pink Silver wrote: I should probably mention I spawned this out of requirement for scripting to advance another project I'm working on, called Dimension 72, probably never heard of off of IRC until now.
Dimension LXXII, that animesque mod with giant rods of plasma shockwaving on imps.
User avatar
Kate
... in rememberance ...
Posts: 2975
Joined: Tue Jul 15, 2003 8:06 pm

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Kate »

printz wrote:
Pink Silver wrote: I should probably mention I spawned this out of requirement for scripting to advance another project I'm working on, called Dimension 72, probably never heard of off of IRC until now.
Dimension LXXII, that animesque mod with giant rods of plasma shockwaving on imps.
And giant-meteor-summoning hammer-wielding sorceresses of light and darkness. With a rapid-fire minigun magnum. ...And Xaser.
User avatar
Kate
... in rememberance ...
Posts: 2975
Joined: Tue Jul 15, 2003 8:06 pm

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Kate »

Still working on it. The best thing I like about Python is being able to experiment with it live.
Spoiler: Huge image
User avatar
InsanityBringer
Posts: 3392
Joined: Thu Jul 05, 2007 4:53 pm
Location: opening the forbidden box

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by InsanityBringer »

Hah, you can change actor properties on the fly? This is reminding me quite a bit of unreal, heh.
User avatar
BouncyTEM
Posts: 3822
Joined: Sun Aug 24, 2003 5:42 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: 2280 Lol Street: The Calamitous Carnival (formerly Senators Prison)

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by BouncyTEM »

Oh, the possibilities.

Also, you silly shotgun farg, you. =P
User avatar
Xaser
 
 
Posts: 10774
Joined: Sun Jul 20, 2003 12:15 pm
Contact:

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by Xaser »

Oh wow, that's cool -- didn't realize it had come along so far already. Modifying properties realtime seems like an interesting venture... and yes, very Unreal-y. :)

Also late, but
Why do I feel so out of my league here? D:
User avatar
cq75
Posts: 1212
Joined: Sun Dec 27, 2009 9:28 pm
Graphics Processor: nVidia with Vulkan support
Location: Just beyond the line horizon

Re: [WIP] PyDoom! GZDoom with Python scripting

Post by cq75 »

hm... very interesting, especially being able to create new actors in-game.
Locked

Return to “Abandoned/Dead Projects”