Jump to content

Neapolitan Doom v0.02


BBQgiraffe

Recommended Posts

9 hours ago, Redneckerz said:

Lua scripting could be great to have, i can't quickly think of a port that supports that. I know Lua is pretty easy to understand even for a non-programmer (is me) so i'd love to see how far you want to go with that idea. Maybe it easifies mod author to implement scripts.

 

Here's one, an experimental WinMBF branch by AlexMax that I called "LBF" (Lua's Best Friend).

@AlexMax had another experimental WinMBF branch using AngelScript that I called "AngelMBF".

 

These might be useful to look at.

Share this post


Link to post

Someone summoned me.  :)  I don't think I ever got very far with any scripted Doom implementation.

 

However, a project that I got a fair bit into was a first-principles falling-block game engine that allowed you to choose between SDL and libretro for input and output, and I was able to get a fair bit of features implemented in a relatively short amount of time.  I then decided to make the game logic into Lua and that sucked up the remainder of my time with the project, which was many times my effort up to that point.  It turned into a morass, I had to rewrite code several times as I discovered my original approach was naive or wrong-headed, and in retrospect I wish I had spent my time on other features, because at the very least I might've had a finished product to show for my efforts.

 

Adding scripting is not a decision you should make lightly.  It is a pain in the ass to implement, it touches a great many things in the engine, crashes that happen to wind their way through the scripting layer might as well be opaque to your debugger, and if you make a stable release of your engine you are now on the hook in terms of keeping compatibility and stability.  Also, if you're using Lua, you better be happy with whatever version of Lua you initially pick, because you're likely stuck with it - compatibility between versions is not a huge priority.

 

If you read all of this and are still interested in adding scripting, at the very least, I think you should consider QuickJS instead, or some other JS implementation.  I can't vouch for them personally, but if I was going to add scripting to a program, I'd look there first and not Lua, even though I'm more familiar with embedding Lua.  Javascript is an ecosystem that is orders of magnitude more healthy and vibrant than Lua, and more importantly it gives you access to TypeScript, and I cannot overstate how amazing that language is at helping you avoid the normal scripting language footguns while interfacing nicely with normal Javascript.

 

And if you're still interested in adding scripting, I would also recommend not loading scripts from WAD files at first.  Don't allow people to make mods with it, but do allow people to load the loose scripts off the disk.  That way, people can try it, and any shortcomings in the scripting API can be made apparent before you commit to them by loading them in WAD files.

Edited by AlexMax

Share this post


Link to post

fixed a bunch of issues related to crashing due during music loading, still uses a lot of memory but I'm working on loading the music in real time instead of all at once so it doesn't consume 100mb of ram

 

Share this post


Link to post
13 hours ago, Redneckerz said:

If you throw in Lua Scripting, it will definitely get a page. For now a port to SFML is unusual and this stuff is highly impressive. But ill duke it out (heh) till you feel comfortable on the sense of direction you want to go with this :)

 

Lua scripting could be great to have, i can't quickly think of a port that supports that. I know Lua is pretty easy to understand even for a non-programmer (is me) so i'd love to see how far you want to go with that idea. Maybe it easifies mod author to implement scripts.

 

And as for mod authors: How are your thoughts on supports for common standards, like DeHacked, MBF21?

Lol, indeed, especially now with DoomXS around the corner. But i have ran into a fever so ill see how far i can go.

MBF is defiantly pretty high on my todo list, hopefully I can get DeHacked implemented as I would love to see Doom 4 Vanilla running(my favorite mod!)

Edited by BBQgiraffe

Share this post


Link to post
12 hours ago, Giomancer said:

 

Here's one, an experimental WinMBF branch by AlexMax that I called "LBF" (Lua's Best Friend).

@AlexMax had another experimental WinMBF branch using AngelScript that I called "AngelMBF".

 

These might be useful to look at.

They weren't finished, but perhaps @Gibbon thinks something of it? :P I mean, you do compile everything, so...
 

8 hours ago, BBQgiraffe said:

MBF is defiantly pretty high on my todo list, hopefully I can get DeHacked implemented as I would love to see Doom 4 Vanilla running(my favorite mod!)

I think DeHacked is one thing to consider yes. What are your other endeavors? Because MBF compliance is a pretty big step to take and my involve Boom/MBF source code.

Share this post


Link to post
1 hour ago, xdude_gamer said:

Alas, I may not be able to play this :(
(Windows user here, no Linux)

Will there be any Mac or Windows ports in the future, however?

I normally don't develop for inferior operating systems but I guess I could try getting it to compile

Share this post


Link to post
1 hour ago, Redneckerz said:

They weren't finished, but perhaps @Gibbon thinks something of it? :P I mean, you do compile everything, so...
 

I think DeHacked is one thing to consider yes. What are your other endeavors? Because MBF compliance is a pretty big step to take and my involve Boom/MBF source code.

my big tasks(after getting everything to not crash as much) are to add support for multiple resolutions/widescreen, pk3 patches, lua or some other scripting language, MBF, and support for modern files such as mp3 and png, I want to make it a good port for making complex mods but not so inflated that it becomes GZDoom

Share this post


Link to post
49 minutes ago, BBQgiraffe said:

my big tasks(after getting everything to not crash as much) are to add support for multiple resolutions/widescreen, pk3 patches, lua or some other scripting language, MBF, and support for modern files such as mp3 and png, I want to make it a good port for making complex mods but not so inflated that it becomes GZDoom

Then ill keep a close watch on this one. When the development gets to a stage that its feature set becomes too unique to ignore, ill get it on the wiki :)

Share this post


Link to post
3 hours ago, Redneckerz said:

They weren't finished, but perhaps @Gibbon thinks something of it? :P I mean, you do compile everything, so...
 

I think DeHacked is one thing to consider yes. What are your other endeavors? Because MBF compliance is a pretty big step to take and my involve Boom/MBF source code.

You mean these? ;)

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_angelscript_win64_non_functional.zip

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_lua53_win64_non_functional.zip

 

Unfortunately, these are (as far as I can tell) unmodified winmbf's that lack 64bit compatibility (unsurprising given their almost 10 year age).  I had to manually patch the angelscript package in order to compile them, sure they don't even boot..  but it may be interesting for history sake that is..

Share this post


Link to post
1 hour ago, Gibbon said:

You mean these? ;)

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_angelscript_win64_non_functional.zip

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_lua53_win64_non_functional.zip

 

Unfortunately, these are (as far as I can tell) unmodified winmbf's that lack 64bit compatibility (unsurprising given their almost 10 year age).  I had to manually patch the angelscript package in order to compile them, sure they don't even boot..  but it may be interesting for history sake that is..

Where on Earth do you find the time to compile these, Mr Compiler? :)

Share this post


Link to post
20 minutes ago, Redneckerz said:

Where on Earth do you find the time to compile these, Mr Compiler? :)

Cloning the repository and typing "make" doesn't take that long =P

Share this post


Link to post
12 minutes ago, Wavy said:

Cloning the repository and typing "make" doesn't take that long =P

I mean, i can't compile for shit (But i can read the code, somewhat).

Share this post


Link to post
43 minutes ago, Redneckerz said:

Where on Earth do you find the time to compile these, Mr Compiler? :)

You mean cloning the repo, fixing the angelscript imports then clicking 'build all' :P maybe 8 minutes for both.

 

I'll do some for this source port too.  It needs a FreeBSD one for the BSD masterrace :)

Edited by Gibbon

Share this post


Link to post
On 9/30/2021 at 12:45 AM, BBQgiraffe said:

I also implemented pitch shifting but I can't figure out how to add new menu options

 

Share this post


Link to post
6 hours ago, Gibbon said:

You mean these? ;)

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_angelscript_win64_non_functional.zip

https://github.com/atsb/source-port-builds/releases/download/1.0/winmbf_lua53_win64_non_functional.zip

 

Unfortunately, these are (as far as I can tell) unmodified winmbf's that lack 64bit compatibility (unsurprising given their almost 10 year age).  I had to manually patch the angelscript package in order to compile them, sure they don't even boot..  but it may be interesting for history sake that is..

oh angelscript! I used to have that in my old game engine

Share this post


Link to post
3 minutes ago, BBQgiraffe said:

oh angelscript! I used to have that in my old game engine

I'll join that club.  I used it years ago for scripting some small games I made when I was younger.  Brings back some good memories.

 

0.015 already!  By tomorrow it'll be 1.0 :D

Share this post


Link to post
2 minutes ago, Gibbon said:

I'll join that club.  I used it years ago for scripting some small games I made when I was younger.  Brings back some good memories.

 

0.015 already!  By tomorrow it'll be 1.0 :D

 my love of redbull brings us closer each passing hour

Share this post


Link to post
Just now, BBQgiraffe said:

currently trying to figure out how to modify the games resolution, should be fun

Suggested resolutions:

 

320x200 (Vanilla Ultimate Doom)
640x480 (Doom 2 added support)
800x600 (2000s monitor)
1024x768 (Work monitor)
1280x780 (Early widescreen monitor)
1280x1080 (4:3)
1600x900 (My PC)
1920x1080 (Big-boy gamer dudes)

Share this post


Link to post
On 9/30/2021 at 3:38 AM, Biodegradable said:

Neapolitan Doom is an excellent name. It complements the ice-cream motif/terminology the community uses like Vanilla, plus its sourceport counterparts (Chocolate, Crispy, Rum & Raisin) really well on multiple levels. :^)

466187420_Screenshot2021-10-02at0_13_24.png.3beb751044323362c60e4647c922d060.png

 

Mac port done :)

You're on 'the list' now: https://github.com/atsb/source-port-builds/releases/download/1.0/NeopolitanDoom_0.015_mac_intel.zip

 

I'll do a PR on your repo later if you'd like?

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...