Homebrew [Release] JFShadowWarrior for 3DS

MrHuu

Well-Known Member
OP
Member
Joined
Sep 19, 2015
Messages
563
Trophies
0
Age
37
XP
1,618
Country
Netherlands
VfvlqYw.png

Shadow Warrior for 3DS

Info


This is an early build of JFShadowWarrior for 3DS.

Based on eDuke3D for 3DS developed by @MasterFeizz


Known issues:


- No midi support (ogg is supported)

Installation instructions:


Download: https://github.com/MrHuu/jfsw-3ds/releases/latest

- Create a folder 'JFSW' on your SD: 'sdmc:/3ds/JFSW/'
- Copy over 'SW.grp' and music files (.ogg)
- Run with the Homebrew launcher
- Or install and run .cia
- ???
- Profit!


Screenshots




Build instructions:


make -f Makefile.ctr
or
make -f Makefile.ctr clean


Sources:

https://github.com/MrHuu/jfsw-3ds

https://github.com/jonof/jfsw
https://github.com/masterfeizz/EDuke3D


Credits:

Jonathon Fowler (https://github.com/jonof) - For creating JFSW and updated 'Build' engine..
Masterfeizz (https://github.com/masterfeizz) - For creating eDuke3D (3DS) and porting the 'Build' engine.

Everyone involved with development of libctru and other 3ds libraries.
 
Last edited by MrHuu,

EvilJagaGenius

Well-Known Member
Member
Joined
May 27, 2020
Messages
112
Trophies
0
XP
345
Country
United States
Cool stuff. I have the Classic Complete version from GOG and my O3DS, will be giving it a shot with that.

Out of curiosity, and I don't mean to pile more work onto devs, but I've been playing Blood lately and loving it. With Duke 3D and now Shadow Warrior on the 3DS, would a port of Blood be feasible, maybe using NBlood as a base? I know it was one of the later games to use the Build engine and it certainly seems advanced.
 

MrHuu

Well-Known Member
OP
Member
Joined
Sep 19, 2015
Messages
563
Trophies
0
Age
37
XP
1,618
Country
Netherlands
Out of curiosity, and I don't mean to pile more work onto devs, but I've been playing Blood lately and loving it. With Duke 3D and now Shadow Warrior on the 3DS, would a port of Blood be feasible, maybe using NBlood as a base? I know it was one of the later games to use the Build engine and it certainly seems advanced.

NBlood is based on recent versions of eDuke32. As long as older methods for rendering video / audio are still supported, it should be feasible. I would first try to get eDuke32 to run, then backport NBlood. But, time would be the biggest issue here.

Map on the bottom screen would be an useful addition. I don't know if it's possible at all.

That should be possible, but only after fixing game related bugs.
And i should probably work on DevilutionX's bottoms screen support first.
PR's are welcome tho!

If you're able to get MIDI music capability going, please share how.

If it's music you want, use .ogg for now. Any specific reason to use midi? I know the demo and some mods use midi. Otherwise use full version with .ogg. Support will be added eventually.
 

Deleted member 323844

Well-Known Member
Member
Joined
Feb 17, 2013
Messages
802
Trophies
1
XP
2,335
Country
Spain
That should be possible, but only after fixing game related bugs.
And i should probably work on DevilutionX's bottoms screen support first.
PR's are welcome tho!
Nice. Also inventory and weapons slots on the bottom screen would be more than welcome.

I have recorded a gameplay on the real hardware (New 3DS XL).



I boosted the brightness a little while editing since gamma bar in-game does not seem to work (maybe I'm wrong).
 
Last edited by Deleted member 323844,
  • Like
Reactions: MrHuu

MrHuu

Well-Known Member
OP
Member
Joined
Sep 19, 2015
Messages
563
Trophies
0
Age
37
XP
1,618
Country
Netherlands
Nice. Also inventory and weapons slots on the bottom screen would be more than welcome.

I have recorded a gameplay on the real hardware (New 3DS XL).



I boosted the brightness a little while editing since gamma bar in-game does not seem to work (maybe I'm wrong).


Brightness and gamma do not affect rendering currently.
And you probably also noticed the music started playing after being saved (or loaded twice?).
I'll have a look at that.

Anyway, nice video!
 

MrHuu

Well-Known Member
OP
Member
Joined
Sep 19, 2015
Messages
563
Trophies
0
Age
37
XP
1,618
Country
Netherlands
Ogg music is groovy. To be honest, I was thinking of the implications for other DOS game source ports.
Midi support would be game dependent. In most cases midi hardware has to be emulated, and not every game supports the same hardware. I haven't looked at midi support for jfsw, but i remember opentitus (for example) uses the OPL MIDI implementation from Chocolate Doom. https://www.chocolate-doom.org/wiki/index.php/OPL_MIDI

Maybe an Ion Fury port if possible? ; )
Maybe, Ion Fury does seem to run with the latest eduke32 with software rendering. Feel free to start porting the latest eduke32.

Is the bottom screen hud ever going to be like the duke nukem 3d port's bottom screen hud?
No, not like eduke3d. As much as i like Masterfeizzes implementation, I probably won't be adding a virtual keyboard or extra buttons.
Unless maybe if there's a good reason and a reasonable demand. But even than, i'm perfectly fine with the current control set.
I prefer the bottom screen to be turned off or maybe show the map or similar. Feel free to express suggestions though.
 
  • Like
Reactions: Wavy

Wavy

Splatana Stamper Enjoyer
Member
Joined
Aug 24, 2020
Messages
303
Trophies
0
Location
MAP13: Downtown
XP
1,577
Country
Australia
Maybe, Ion Fury does seem to run with the latest eduke32 with software rendering. Feel free to start porting the latest eduke32.
I'm not really a programmer, but I'll see what I can do.
Edit: IIRC 3D Realms had issues porting Ion Fury to the Switch, so it'd be a miracle if I made a 3DS port. =P
 
Last edited by Wavy,

MrHuu

Well-Known Member
OP
Member
Joined
Sep 19, 2015
Messages
563
Trophies
0
Age
37
XP
1,618
Country
Netherlands
What about for alt-fire?

As i said, personally i'm perfectly fine with the current control set.
If you want additional features, be a bit more descriptive.

I guess you want extra buttons on the bottom screen?
If you make a suggestion for a layout with buttons, it will give me something to consider.

I'm not really a programmer, but I'll see what I can do.
Edit: IIRC 3D Realms had issues porting Ion Fury to the Switch, so it'd be a miracle if I made a 3DS port. =P

I'm also not affiliated with software development in any way.
Other than playing around with some 3ds homebrew.
You can learn a lot from looking at working examples, modifying them and see how it behaves.

I havn't looked at eDuke32 at all, but the requirements to get eduke32 running should be quite similar to eduke3d and jfsw-3ds.

Also keep in mind 3DRealms probably didn't settle with software rendering for the switch, as i imagine most issues they encountered would have been with hardware rendering, using 'Polymost' and 'Polymer' (which isn't even supported now).
 
  • Like
Reactions: Wavy

Wavy

Splatana Stamper Enjoyer
Member
Joined
Aug 24, 2020
Messages
303
Trophies
0
Location
MAP13: Downtown
XP
1,577
Country
Australia
You can learn a lot from looking at working examples, modifying them and see how it behaves.
Forgot about those examples. I should check them out.

Also keep in mind 3DRealms probably didn't settle with software rendering for the switch, as i imagine most issues they encountered would have been with hardware rendering, using 'Polymost' and 'Polymer' (which isn't even supported now).
I checked this Digital Foundry video on the console ports of Ion Fury and it seems General Arcade (which I mistaked for being 3D Realms) made a lot of optimizations to the Polymost renderer, decreasing the amount of draw calls each frame from 3000+ to only ~100 (more info at 6:59 in the video). Though, I'll still probably just stick to the SW renderer.

I think one of the other major issues with the frame-rate is the use of CON scripts which Build games like Duke 3D and Shadow Warrior used for fairly simple features like AI, but Ion Fury heavily utilizes CON scripts and processing those scripts for Ion Fury alone used over 50% of the Switch's CPU (more info at 8:54). What I could do is move script processing to the 3DS's ARM9 CPU if possible and let ARM11 do everything else (if that's how it works).
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • BigOnYa @ BigOnYa:
    A woman with no arms and no legs was sitting on a beach. A man comes along and the woman says, "I've never been hugged before." So the man feels bad and hugs her. She says "Well i've also never been kissed before." So he gives her a kiss on the cheek. She says "Well I've also never been fucked before." So the man picks her up, and throws her in the ocean and says "Now you're fucked."
    +2
  • BakerMan @ BakerMan:
    lmao
  • BakerMan @ BakerMan:
    anyways, we need to re-normalize physical media

    if i didn't want my games to be permanent, then i'd rent them
    +1
  • BigOnYa @ BigOnYa:
    Agreed, that why I try to buy all my games on disc, Xbox anyways. Switch games (which I pirate tbh) don't matter much, I stay offline 24/7 anyways.
    +1
  • AncientBoi @ AncientBoi:
    I don't pirate them, I Use Them :mellow:. Like I do @BigOnYa 's couch :tpi::evil::rofl2:
    +1
  • cearp @ cearp:
    @BakerMan - you can still "own" digital media, arguably easier and better than physical since you can make copies and backups, as much as you like.

    The issue is DRM
    +1
  • cearp @ cearp:
    You can buy drm free games / music / ebooks, and if you keep backups of your data (like documents and family photos etc), then you shouldn't lose the game. but with a disk, your toddler could put it in the toaster and there goes your $60

    :rofl2:
  • cearp @ cearp:
    still, I agree physical media is nice to have. just pointing out the issue is drm
    +1
  • rqkaiju2 @ rqkaiju2:
    i like physical media because it actually feels like you own it. thats why i plan on burning music to cds
  • cearp @ cearp:
    It's nice to not have to have a lot of physical things though, saves space
    +1
  • AncientBoi @ AncientBoi:
    Nor clothes 🤮 . Saves on time, soap, water and money having to wash them. :D
  • SylverReZ @ SylverReZ:
    @rqkaiju2, Physical media is a great source for archiving your data, none of that cloud storage shiz.
    +1
  • AncientBoi @ AncientBoi:
    [squeezes @SylverReZ onto a physical media, then archives you in my old stuff box] :tpi::rofl2::tpi:
    +1
  • BakerMan @ BakerMan:
    guys, should i change my pfp to one of these or keep it the same?
    iu

    iu

    (i guess i could change it to one of my other pfps too, but i just want to see what you guys think first)
  • SylverReZ @ SylverReZ:
    @BakerMan, Up to you.
  • BakerMan @ BakerMan:
    smug sonic time lmao
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Chronic The HempHog
  • DilllyDabDharma @ DilllyDabDharma:
    I'm new! Hi!
  • cearp @ cearp:
    Welcome
  • DilllyDabDharma @ DilllyDabDharma:
    What are your favorite topics?
    DilllyDabDharma @ DilllyDabDharma: What are your favorite topics?