Homebrew [Release] Quake2CTR - Quake 2 port

EvilJagaGenius

Well-Known Member
Member
Joined
May 27, 2020
Messages
110
Trophies
0
XP
341
Country
United States
Finally got around to trying this, I tried with both MasterFeizz's repo and MrHuu's, but I get multiple definition errors when it links stuff. Using a fresh install of devkitPro with the 3DS components installed.

Code:
linking Quake2CTR.elf
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld.exe: game/g_main.o:C:/devkitPro/projects/Quake2CTR-master/game/g_main.c:47: multiple definition of `dedicated'; qcommon/common.o:C:/devkitPro/projects/Quake2CTR-master/qcommon/common.c:46: first defined here
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld.exe: game/g_main.o:C:/devkitPro/projects/Quake2CTR-master/game/g_main.c:43: multiple definition of `maxclients'; server/sv_main.o:C:/devkitPro/projects/Quake2CTR-master/server/sv_main.c:47: first defined here
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld.exe: ctr/vid_ctr.o:C:/devkitPro/projects/Quake2CTR-master/ctr/vid_ctr.c:34: multiple definition of `scr_viewsize'; client/cl_scrn.o:C:/devkitPro/projects/Quake2CTR-master/client/cl_scrn.c:47: first defined here
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld.exe: ctr/vid_ctr.o:C:/devkitPro/projects/Quake2CTR-master/ctr/vid_ctr.c:33: multiple definition of `vid_gamma'; ref_soft/r_main.o:C:/devkitPro/projects/Quake2CTR-master/ref_soft/r_main.c:137: first defined here
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.1.0/../../../../arm-none-eabi/bin/ld.exe: ctr/vid_ctr.o:C:/devkitPro/projects/Quake2CTR-master/ctr/vid_ctr.c:32: multiple definition of `vid_fullscreen'; ref_soft/r_main.o:C:/devkitPro/projects/Quake2CTR-master/ref_soft/r_main.c:136: first defined here
collect2.exe: error: ld returned 1 exit status
make[1]: *** [/opt/devkitpro/devkitARM/3ds_rules:42: /c/devkitPro/projects/Quake2CTR-master/Quake2CTR.elf] Error 1
make: *** [Makefile:252: build] Error 2

Any help would be nice, thanks!
Ah, I think it could be because Quake2CTR can't compile on latest versions of devkitARM and libctru. No way to fix that (to my knowledge). Sorry!
Think I've got something down.

I found an archive of old devkitPro releases, I used the latest versions of stuff before March 2020. Specifically:
Code:
devkitARM-r53-1
devkitarm-crtls-1.0.3-1
devkitarm-rules-1.0.0-1
libctru-1.6.0-1
libtonc-1.4.3-3
I backed up my devkitARM, libctru and libtonc folders and replaced them with these. Using these I can compile working .3dsx and .smdh files, I loaded them up on my 3DS and they appear to be working fine. However after building them the compile crashes again. Something about bannertool.exe, here's some output from 'make xatrix'.
Code:
linking Quake2XATRIX.elf
built ... Quake2XATRIX.smdh
built ... Quake2XATRIX.3dsx
/bin/sh: line 1: bannertool.exe: command not found
make[2]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:286: banner.bnr] Error 127
make[1]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:210: XATRIX] Error 2
make: *** [Makefile:204: xatrix] Error 2

@MrHuu Do you know how to fix this? Also, since I can build working .3dsx and .smdh files, would you mind if I posted them up to save others some frustration?

EDIT: Tried 'make rogue', got
Code:
C:/devkitPro/projects/MrHuu-Quake2CTR-master/game_rogue/g_local.h:25:10: fatal error: nan.h: No such file or directory
   25 | #include <nan.h>
      |          ^~~~~~~
compilation terminated.
Trying to find a fix.

EDIT 2: After some tweaks to source, Rogue compiles. I'm sad the Disruptor isn't available though... After copying bannertool.exe and makerom.exe to devkitARM/bin, vanilla, CTF, CTC, and DDay have no errors and compile .cia builds. Rogue and Xatrix still throw fits about banners.
 
Last edited by EvilJagaGenius,
  • Like
Reactions: MrHuu

MrHuu

Well-Known Member
Member
Joined
Sep 19, 2015
Messages
562
Trophies
0
Age
37
XP
1,592
Country
Netherlands
Think I've got something down.

I found an archive of old devkitPro releases, I used the latest versions of stuff before March 2020. Specifically:
Code:
devkitARM-r53-1
devkitarm-crtls-1.0.3-1
devkitarm-rules-1.0.0-1
libctru-1.6.0-1
libtonc-1.4.3-3
I backed up my devkitARM, libctru and libtonc folders and replaced them with these. Using these I can compile working .3dsx and .smdh files, I loaded them up on my 3DS and they appear to be working fine. However after building them the compile crashes again. Something about bannertool.exe, here's some output from 'make xatrix'.
Code:
linking Quake2XATRIX.elf
built ... Quake2XATRIX.smdh
built ... Quake2XATRIX.3dsx
/bin/sh: line 1: bannertool.exe: command not found
make[2]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:286: banner.bnr] Error 127
make[1]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:210: XATRIX] Error 2
make: *** [Makefile:204: xatrix] Error 2

@MrHuu Do you know how to fix this? Also, since I can build working .3dsx and .smdh files, would you mind if I posted them up to save others some frustration?

EDIT: Tried 'make rogue', got
Code:
C:/devkitPro/projects/MrHuu-Quake2CTR-master/game_rogue/g_local.h:25:10: fatal error: nan.h: No such file or directory
   25 | #include <nan.h>
      |          ^~~~~~~
compilation terminated.
Trying to find a fix.

EDIT 2: After some tweaks to source, Rogue compiles. I'm sad the Disruptor isn't available though... After copying bannertool.exe and makerom.exe to devkitARM/bin, vanilla, CTF, CTC, and DDay have no errors and compile .cia builds. Rogue and Xatrix still throw fits about banners.

Love your determination! I certainly wouldn't mind sharing these builds, if i did i wouldn't have uploaded it in the first place.
Thanks for asking btw, it's appreciated.

So if i understand right, you've been able to compile both .3dsx and .cia's for all but Rogue and Xatrix?
The process of building .smdh and banners should be the same for all builds.
I assume both bannertool and makerom are available.

Can you share the errors you're still getting building Rogue and Xatrix? Is it just the .cia builds which are failing?
 

EvilJagaGenius

Well-Known Member
Member
Joined
May 27, 2020
Messages
110
Trophies
0
XP
341
Country
United States
Love your determination! I certainly wouldn't mind sharing these builds, if i did i wouldn't have uploaded it in the first place.
Thanks for asking btw, it's appreciated.

So if i understand right, you've been able to compile both .3dsx and .cia's for all but Rogue and Xatrix?
The process of building .smdh and banners should be the same for all builds.
I assume both bannertool and makerom are available.

Can you share the errors you're still getting building Rogue and Xatrix? Is it just the .cia builds which are failing?

It's just the .cia builds, the .3dsx seems to be fine. Here's the error from Xatrix, the last few messages from the compile.
Code:
linking Quake2XATRIX.elf
built ... Quake2XATRIX.smdh
built ... Quake2XATRIX.3dsx
make[2]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:286: banner.bnr] Error 1
make[1]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:210: XATRIX] Error 2
make: *** [Makefile:204: xatrix] Error 2
Similar for Rogue.
Code:
linking Quake2ROGUE.elf
built ... Quake2ROGUE.smdh
built ... Quake2ROGUE.3dsx
make[2]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:286: banner.bnr] Error 1
make[1]: *** [/c/devkitPro/projects/MrHuu-Quake2CTR-master/Makefile:210: ROGUE] Error 2
make: *** [Makefile:204: rogue] Error 2

And the builds I have so far should be attached.
 

Attachments

  • Q2ModBuilds_v1.zip
    5.3 MB · Views: 105
  • Like
Reactions: MrHuu

MrHuu

Well-Known Member
Member
Joined
Sep 19, 2015
Messages
562
Trophies
0
Age
37
XP
1,592
Country
Netherlands
Right, the banner images have the wrong size. Try replacing the images in the 'assets' folder with the attached ones.
 

Attachments

  • rogue_banner.png
    rogue_banner.png
    60.3 KB · Views: 115
  • xatrix_banner.png
    xatrix_banner.png
    67.5 KB · Views: 100

GaroK

Well-Known Member
Newcomer
Joined
Apr 24, 2019
Messages
48
Trophies
0
Age
24
XP
296
Country
Poland
I can't connect to multiplayer, because upon connecting to a server my console crashes, but it all worked fine a while ago.
Any way to fix that?
 
  • Like
Reactions: Tarmfot

MysticFlipFlop

Well-Known Member
Newcomer
Joined
Apr 26, 2020
Messages
52
Trophies
0
Age
20
Location
no
Website
www.youtube.com
XP
750
Country
Peru
i got this sys_error:
unable to allocate 16777216 bytes


edit: i have an o3ds lol (first background demo gameplay runs flawlessly, that's really impressive, but after that It crashes with the same error)
 
Last edited by MysticFlipFlop,

EvilJagaGenius

Well-Known Member
Member
Joined
May 27, 2020
Messages
110
Trophies
0
XP
341
Country
United States
I'm trying to build this so I can adapt @MrHuu 's code and get the mission packs working with this new update, but got a missing file error:
Code:
F:/devkitProProjects/Quake2CTR-masterfeizz/client/snd_stream.c:32:10: fatal error: tremor/ivorbisfile.h: No such file or directory
   32 | #include <tremor/ivorbisfile.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Any idea where I can find the files to fix this?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Sicklyboy @ Sicklyboy:
    I'm not familiar with the technicalities of the differences between the two versions, but I'm wondering if at least some of those differences are things that you could port over to the US version in your patch without having to include copyrighted assets from the EU version
  • TwoSpikedHands @ TwoSpikedHands:
    @Sicklyboy I am wanting to fully change the game and bend it to my will lol. I would like to eventually have the ability to add more characters, enemies, even have a completely different story if i wanted. I already have the ability to change the tilemaps in the US version, so I can basically make my own map and warp to it in game - so I'm pretty far into it!
  • TwoSpikedHands @ TwoSpikedHands:
    I really would like to make a hack that I would enjoy playing, and maybe other people would too. swapping to the EU version would also mean my US friends could not legally play it
  • TwoSpikedHands @ TwoSpikedHands:
    I am definitely considering porting over some of the EU features without using the actual ROM itself, tbh that would probably be the best way to go about it... but i'm sad that the voice acting is so.... not good on the US version. May not be a way around that though
  • TwoSpikedHands @ TwoSpikedHands:
    I appreciate the insight!
  • The Real Jdbye @ The Real Jdbye:
    @TwoSpikedHands just switch, all the knowledge you learned still applies and most of the code and assets should be the same anyway
  • The Real Jdbye @ The Real Jdbye:
    and realistically they wouldn't

    be able to play it legally anyway since they need a ROM and they probably don't have the means to dump it themselves
  • The Real Jdbye @ The Real Jdbye:
    why the shit does the shitbox randomly insert newlines in my messages
  • Veho @ Veho:
    It does that when I edit a post.
  • Veho @ Veho:
    It inserts a newline in a random spot.
  • The Real Jdbye @ The Real Jdbye:
    never had that i don't think
  • Karma177 @ Karma177:
    do y'all think having an sd card that has a write speed of 700kb/s is a bad idea?
    trying to restore emunand rn but it's taking ages... (also when I finished the first time hekate decided to delete all my fucking files :wacko:)
  • The Real Jdbye @ The Real Jdbye:
    @Karma177 that sd card is 100% faulty so yes, its a bad idea
  • The Real Jdbye @ The Real Jdbye:
    even the slowest non-sdhc sd cards are a few MB/s
  • Karma177 @ Karma177:
    @The Real Jdbye it hasn't given me any error trying to write things on it so I don't really think it's faulty (pasted 40/50gb+ folders and no write errors)
  • DinohScene @ DinohScene:
    run h2testw on it
    +1
  • DinohScene @ DinohScene:
    when SD cards/microSD write speeds drop below a meg a sec, they're usually on the verge of dying
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Samsung SD format can sometimes fix them too
  • Purple_Heart @ Purple_Heart:
    yes looks like an faulty sd
  • Purple_Heart @ Purple_Heart:
    @Psionic Roshambo i may try that with my dead sd cards
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    It's always worth a shot
  • TwoSpikedHands @ TwoSpikedHands:
    @The Real Jdbye, I considered that, but i'll have to wait until i can get the eu version in the mail lol
  • I @ I-need-help-with-wup-wiiu:
    i need help with nusspli failed downloads, can someone respond to my thread? pretty please:wub: