Wolf3d Haven Forum

Please log in or register. Smile
Wolf3d Haven Forum

A friendly Wolfenstein 3D community, about Wolfenstein 3D, the game that gave birth to first person shooters...


    Wolfenstein Never-Ending Coding Thread

    Share

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    SDL Wolf3d with Cutscenes?

    Post by Dark_wizzie on Tue Sep 21, 2010 11:35 am

    Can anyone refer me to a mod made in SDL (or non SDL, if that's allt here is) that has cutscene(s) in it?
    Thanks.



    Wolf3d Haven
    Minute Logic Blog

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Tue Oct 05, 2010 4:26 pm

    Hi! Due to the fact that throughout the whole process of making this game, I will have a lot of questions, I figured I could just ask them all in this thread.

    So, the first question (too bad Wlhack is STILL MIA...)...
    Compiling the SDL!
    I followed Wlhack's little sticky, and all's well until I hit compile and run. Now, exactly what IS "compile and run"? Do I hit it when I am done coding and want it all to compile?

    At any rate, I first clicked it, it said it missed some files, so I copied a few from Super Haven Mapset, and now it says "No Wolfenstein File to be Found!"... So, I'm asking myself, what's going on, and how do I start?

    Question 1: What is "compile and run"?

    Hopefully someone answers.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Wed Oct 06, 2010 4:26 am

    Compile and run is exactly what it sounds like. Compile the source code and run your executable. Anyway, to address your problem -

    Wolf4SDL uses pre-processor code (all of those #defines and #ifdefs) to find out what version to compile for. That code itself is only used by the compiler and tells it what C++ code to compile and not to compile. This is mainly used in lump counts in your data files in the case of compiling for Wolfenstein 3-D. If you head on over to the file version.h, you'll notice a list of #define's to choose from to compile for a certain version of the Wolfenstein 3-D executable. There are various Apogee versions and the iD/GT Interactive/Activition version, which have identical game files (more or less, identical enough for you not to worry about it code-wise). You need to find out who published your game files, are they the Apogee version? If so, uncomment ONE (make sure only one of the exe version #defines is defined at any one time) of the Apogee version defines and compile. Otherwise, uncomment the iD/GT/Activition one. The version.h file is very well commented/documented right there in the file, so just follow what you have in there.

    Although I am assuming you have gotten past that point, I wanted to clarify that for you, because having mismatched exe's and game files can cause a lot of runtime errors. Since it is not finding your files (rather than telling you there are more or less lumps than there should be for that version of the exe), please make sure your files have the extension WL6. Wolf4SDL does not open just any game files in the directory, it open's WL1 (1 episode demo), WL3 (the original 3 episodes), WL6(all 6 episodes) or SOD(spear of destiny files) files depending on what you've compiled. If you want different extensions, you will have to change the code to reflect that. But to be honest, until you're ready to release, changing the extension shouldn't be a top priority, as you'll have an easier time just modifying WL6 files in your editors.

    I hope this clarified any questions, and if you have any further questions about this or anything else, I can be contacted on MSN, which is listed in my profile.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Wed Oct 06, 2010 10:55 am

    Alright. I'll get some MSN up and working.
    Most days, I'll be on during 4PM to 6PM pacific time. It varies, though.



    Wolf3d Haven
    Minute Logic Blog

    Tenamk
    Seasoned Wolfer
    Seasoned Wolfer

    Male
    Number of posts : 303
    Age : 19
    Location : In Gestapo headquarters
    Job : Spy
    Hobbie : Kick S.S.'s butt
    Message : Youtube channel : http://www.youtube.com/user/PlayWolf3D
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Tenamk on Sat Oct 09, 2010 11:25 am

    Spear of Destiny ending?


    Last edited by Tenamk on Wed Oct 13, 2010 7:49 am; edited 1 time in total (Reason for editing : :O)



    I won the first forum raffle! cheers

    Dark_wizzie's signature: Nobody is perfect, I am nobody. Copier of my siggy will be severely pwned.
    Tenamk says: Oh crap!

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Sat Oct 09, 2010 11:53 am

    Well does that really count? It was just a 5 second clip. :S Oh well...



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Sun Oct 10, 2010 6:05 am

    Well first of all, you need to be more specific. Are you looking for some kind of video? Or perhaps using in-game objects? Or like with the ending of SoD as Tenamk states?

    I'll break down all 3:

    Video -
    This would be rather hard, as you would have int program in a video codec into SDL. This would also increase the size of your distribution exponentially

    In-Game Objects
    This would probably be even harder than putting in a video coded. To use in game objects you would have to script out every event in C++ or create some kind of script interpreter so you could script everything out in Lua or AngelScript or w/e. Currently I am working on this in an enhancement of SDL, and let me be the first to tell you, it is a major workload.

    Images
    The easiest and quickest to do. You can use the code for the end screens in SoD to make your cutscenes. Although they would be more like intermissions than cutscenes really.

    To be blunt, what you're trying to do isn't even done in Doom sourceports. That should tell you something. Video support was removed in an early version of ZDoom, and there is no AI scripting (I mean like UnrealScript or something, I know there is DECORATE and ACS but that really doesn't compare). Your best bet is to have intermission texts like Resurrection. There is actually a tutorial for it on the Dome.

    Hope this helps!



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Sun Oct 10, 2010 7:25 am

    Thanks for the info, I'll keep that in mind.



    Wolf3d Haven
    Minute Logic Blog

    Per-Scan
    Seasoned Wolfer
    Seasoned Wolfer

    Number of posts : 385
    Age : 43
    Location : One year in the future
    Registration date : 2010-09-29

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Per-Scan on Sun Oct 10, 2010 8:37 am

    Making cutscenes with images comic book style would really suit Wolf3D more than the other two options if you ask me (I know you didn't!!). So, to my mind, it's fortuitous that the easiest option would also be the most suitable... That is unless you have a particularly strong idea in your head... Smile

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Wed Oct 13, 2010 9:04 am

    Per-Scan has a very good point. If you're looking for something more than just text and thumbnail size images, use the read this screen and/or the endart/intermission texts to put up an image at x:0 y:0.

    Essentially just about anything is possible with the code, you can make it do whatever you want with varying amounts of elbow grease and time. However, practicality comes to mind. Do you really want to be spending that much time implementing one feature, when there are (in my opinion) better and easier alternatives? No mod that I know of has cut scenes. At least not the kind that comes to mind when you think of a cut scene. I say go with Per-Scan's advice. If you want to use in-game stuff, here is a simple method for you, although it still relies on images.

    1. Set up a small scene in your favorite map editor. Two guard blabbing, or an officer or someone with a guard. Whatever comes to mind. Last, put in a player start.

    2. Apply floor codes to the scene. But when you've done that, you are actually going to remove the floor code where the guards are so that they spawn inactive. This way you can move around for step 3 without activating them.

    3. Run the game and go to the level containing your scene. If all goes well, the guards will be stationary and will not react unless you shoot. Now, position yourself so that you are at an angle you like and take a screenshot. Repeat this for every scene you have, how many ever times per scene you need.

    4. Open up your favorite image editor and clean the place up. Get rid of the hud and any bits that don't need to be there. Ideally, you will use the space that was the hud as a letterbox for your scene's text.

    That is about as close to using in game objects as you will get without implementing some form of scripting. It is easy enough and again you can just use the code that SoD uses to display its end images in between the levels you want.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Wed Oct 13, 2010 10:59 am

    I guess for the most part, what I'll do is to have the cutscenes just be pictures with text. I gotta find someone to draw it, then. For just one cutscene, it'll actually play a pre-recorded video.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Wed Oct 13, 2010 4:49 pm

    Well I did some fishing around in the SDL (just the library itself) and the SDL_mixer libraries. Actually playing a video would be relatively simple, especially if you Google an SMPEG wrapper. Soooo....


    This is the func which handles the intermission and any form of the helpart/endart in wl_text.cpp:
    Code:

    void EndText (void)
    {
        int    artnum;
        char    *text;
    #ifndef ARTSEXTERN
        memptr  layout;
    #endif

        ClearMemory ();

    #ifdef JAPAN
        ShowArticle(gamestate.episode + 1);

        VW_FadeOut();

        SETFONTCOLOR(0,15);
        IN_ClearKeysDown();
        if (MousePresent && IN_IsInputGrabbed())
            IN_CenterMouse();  // Clear accumulated mouse movement

        FreeMusic ();
    #else



    #ifdef ARTSEXTERN
        artnum = endextern+gamestate.episode;
        CA_CacheGrChunk (artnum);
        text = (char *)grsegs[artnum];
    #else
        endfilename[6] = '1'+gamestate.mapon;
        CA_LoadFile (endfilename,&layout);
        text = (char *)layout;
    #endif

        ShowArticle (text);

    #ifdef ARTSEXTERN
        UNCACHEGRCHUNK(artnum);
    #else
        free(layout);
    #endif


        VW_FadeOut();
        SETFONTCOLOR(0,15);
        IN_ClearKeysDown();
        if (MousePresent && IN_IsInputGrabbed())
            IN_CenterMouse();  // Clear accumulated mouse movement

        FreeMusic ();
    #endif
    }

    (Wolf3d code taught me to really....REALLY hate preprocessor code)

    This is what we really want to look at in that function!
    Code:
        endfilename[6] = '1'+gamestate.mapon;
        CA_LoadFile (endfilename,&layout);
        text = (char *)layout;

    I would make a good guess that replacing this little bit of code with some video loading code would get you your video. This particular thread at the SDL forums may interest you a great deal. But I will be really honest, plugging that code in may have some really, really unpredictable results, then again it may not. You may have timing and exit issues where the player will press escape and it go to the game, but the video is still playing. So disabling input while the video is playing will be an issue for you. But a well constructed while statement should solve that problem. Again it is really not an easy task, but if you do it, I am pretty sure you'd be the first.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Tue Oct 19, 2010 11:57 am

    Okie dokies. I understand now. The compiler makes the exe, and you copy the exe from the directory and pop it into your folder with your mod in it. Right? Well, I better restart my process, since I've managed to change some settings that make the game crash. I think I know how to map on a largerl evel with WDC. I'll hopefuly sort it out all, today.



    Wolf3d Haven
    Minute Logic Blog

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Wed Oct 20, 2010 4:55 pm

    Ok, so, Mr. Zin, do you happen to know what "binaries" are? I saw them on the download page for SDL source. Activision binaries...blah blah.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 21, 2010 8:37 am

    @Dark_wizzie wrote:Okie dokies. I understand now. The compiler makes the exe, and you copy the exe from the directory and pop it into your folder with your mod in it. Right? Well, I better restart my process, since I've managed to change some settings that make the game crash. I think I know how to map on a largerl evel with WDC. I'll hopefuly sort it out all, today.

    Ja, you take the EXE file from the Debug directory and put it with your mod. Although I recommend this setup for an easy to manage design flow. Put your base files in one directory for WDC to feed of off and set the WDC output directory to debug. That way you can use everything efficiently without having to have a million different directories open at once.

    @Dark_wizzie wrote:Ok, so, Mr. Zin, do you happen to know what "binaries" are? I saw them on the download page for SDL source. Activision binaries...blah blah.
    Binaries are a fancy collective term for executables and libraries. SDL.dll, SDL_mixer.dll and wolf3d.exe are all binaries. Although technically every file on your computer is a binary files when you get down to the nitty gritty, but that is neither here nor there.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Thu Oct 21, 2010 11:35 am

    Alritey, after I did what I thought was the correct thing to do in order to have larger maps, the game glitches. I edited #define mapshift 6 into 7, and compiled. On the WDC editor, the only way I saw to edit larger maps was to look at map details and manually edit the size of the map. I'm probably doing that wrong, as I think there is a specific function just for that... Sad As I play the "larger" map, the player starts in a wall and can't move. Well, it just glitches.

    Also, I tried editting the max static object in a level, and I compiled, yet it seems that the changes did not take effect. I am confuzzled.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 21, 2010 11:58 am

    @Dark_wizzie wrote:Alritey, after I did what I thought was the correct thing to do in order to have larger maps, the game glitches. I edited #define mapshift 6 into 7, and compiled. On the WDC editor, the only way I saw to edit larger maps was to look at map details and manually edit the size of the map. I'm probably doing that wrong, as I think there is a specific function just for that... Sad As I play the "larger" map, the player starts in a wall and can't move. Well, it just glitches.

    Also, I tried editting the max static object in a level, and I compiled, yet it seems that the changes did not take effect. I am confuzzled.

    You are correct as far as how to make the map bigger in WDC. But give this snippet a try:

    Code:

    #define mapshift        7
    #define MAPSIZE        (1<<mapshift)
    #define maparea        MAPSIZE*MAPSIZE

    #define mapheight      MAPSIZE
    #define mapwidth        MAPSIZE

    To get more objects, try

    Code:

    #define MAXACTORS      250        // max number of nazis, etc / map
    #define MAXSTATS        500        // max number of lamps, bonus, etc

    Those SHOULD work. I just tested it myself in a room with 477 cieling lights without error. As for spawning in a wall, make SURE your map is 128x128 or that you dont have duplicate starting points.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Thu Oct 21, 2010 12:00 pm

    Alrite, I think that's what I did, though. I'll take a closer look later today. Hopefully tommorrow I will emerge, victorious!

    Although the process to allow more static objects is darn simple. One step, change the number to, say, 800. Coulda sworn that's what I did, though. Crying or Very sad



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 21, 2010 12:03 pm

    You might also try changing the 'itemnumber' variable in the statobj_t struct in WL_DEF.H from byte to int as you're moving from an 8-bit value to a 16-bit value.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Fri Oct 22, 2010 11:37 am

    Alrite. I changed the max stats to something like 500. I also hit the "recompile all" button and then compiled it into exe. I think it works now. As for the 168 x 168 problem, that is sorta fixed. The levels ARE indeed, larger, but something glitchy happened to the graphics... oh god. BJ's arm as shown while wielding the pistol is now black... the water puddle is black... the faces of Nazi people are black! That's just odd. If you need picts, I can show you later.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Fri Oct 22, 2010 12:10 pm

    You might try running it in windowed mode if you're running it fullscreen, or visa versa if you're running it in windowed mode. If that doesnt help, I'll need some screenshots



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Fri Oct 22, 2010 3:51 pm




    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Fri Oct 22, 2010 3:55 pm

    Wow that's...wow...

    To be honest, it looks like a palette issue. His hands are all black but the gun isnt, jewels on the cross are black but other portions aren't. Same issue with the clip. If it were a bug in the code I'd figure entire sprites would be black (besides the puddle anyway). First of all, make sure your palette is in working order. If that checks out okay, list all of the things you've done to the source code to date and we'll go from there.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Tenamk
    Seasoned Wolfer
    Seasoned Wolfer

    Male
    Number of posts : 303
    Age : 19
    Location : In Gestapo headquarters
    Job : Spy
    Hobbie : Kick S.S.'s butt
    Message : Youtube channel : http://www.youtube.com/user/PlayWolf3D
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Tenamk on Fri Oct 22, 2010 3:57 pm

    Odd glitch



    I won the first forum raffle! cheers

    Dark_wizzie's signature: Nobody is perfect, I am nobody. Copier of my siggy will be severely pwned.
    Tenamk says: Oh crap!

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Fri Oct 22, 2010 3:59 pm

    Maybe I should just try redoing everything. :\



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Fri Oct 22, 2010 5:46 pm

    Don't give up just yet. More often than not, the solution is deceptively simple. Post the text of your wolfpal.inc file here so I can take a look at it Very Happy. Your palette file may be corrupt or unintentionally edited. Files can be corrupted by something as simple as opening the file in a program that was not meant to read that kind of file. Some modern word processors (even WordPad) have a nasty nasty habbit of appending data somewhere when you open/save it. This can cause some odd bugs in your game.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Sat Oct 23, 2010 10:32 am

    I fixed it! It is due to the "compile all" button on WDC, for some reason. What coding am I going to do next?



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Sat Oct 23, 2010 10:55 am

    That's what I meant by deceptively simple lol. As far as what is next, I do recall you having a list, so go from there Very Happy. Although off the top of my head, ammo/health walls come to mind, so do new weapons.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Mon Oct 25, 2010 12:15 pm

    Let's not do that for now. I haven't fully thought out the weapons that will be involved. I'm going to try to chance the status bar for the game. Can't do it today, will do it tomorrow.



    Wolf3d Haven
    Minute Logic Blog

    WolferCooker
    Hardcore Wolfer
    Hardcore Wolfer

    Male
    Number of posts : 1166
    Age : 26
    Location : Pennsylvania, U.S.A
    Hobbie : Video games (mostly PC)
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by WolferCooker on Mon Oct 25, 2010 9:09 pm

    Wizzie, I wouldn't make your own HUD (status bar). You'd most likely run into a lot of trouble. I like this status bar here taken from The Lost Relic. Dunno why, but it's my favorite one out of all the different status bars I've seen.



    Either that or this unique HUD taken from Rising Evil 2.


    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Tue Oct 26, 2010 11:34 am

    I actually think I might go with the more "standard" status bar from The Lost Relic. I just seem to like the design better.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Tue Oct 26, 2010 12:14 pm

    Actually I still recommend making your own. It isn't THAT hard and you will be able to customize it more easily if need be. I could probably make one for you if you feel that unsure about it. Give me some criteria and I will see what I can whip up.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Tue Oct 26, 2010 12:19 pm

    I don't even know what I want for the status bar, to be honest. I think something like The Lost Relic would do. It looks like, from Wolfercooker's picture, that the status bar was for 2 keys. I'm pretty sure The Lost Relic has 4 keys, though. Maybe it just looks odd on that part. I was thinking of having the time shown on the upper right hand corner as text, and only on some scenarios. Then again, what am I going to put there to fill up the space?



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Tue Oct 26, 2010 12:59 pm

    Well when you're 100% sure lemme know.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    WolferCooker
    Hardcore Wolfer
    Hardcore Wolfer

    Male
    Number of posts : 1166
    Age : 26
    Location : Pennsylvania, U.S.A
    Hobbie : Video games (mostly PC)
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by WolferCooker on Tue Oct 26, 2010 1:17 pm

    Wizzie, that Lost Relic stat bar IS for 4 keys. Also, if the timer doesn't interest you, why not replace it with an armor stat?



    Last edited by WolferCooker on Tue Oct 26, 2010 1:42 pm; edited 2 times in total

    WolferCooker
    Hardcore Wolfer
    Hardcore Wolfer

    Male
    Number of posts : 1166
    Age : 26
    Location : Pennsylvania, U.S.A
    Hobbie : Video games (mostly PC)
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by WolferCooker on Tue Oct 26, 2010 1:21 pm

    Scratch that, I like WSJ's Totenkopf SDL stat bar better.


    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Tue Oct 26, 2010 1:35 pm

    Have you ever heard of the edit button?



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    WolferCooker
    Hardcore Wolfer
    Hardcore Wolfer

    Male
    Number of posts : 1166
    Age : 26
    Location : Pennsylvania, U.S.A
    Hobbie : Video games (mostly PC)
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by WolferCooker on Tue Oct 26, 2010 1:36 pm

    Yes Zin. I didn't feel like using it. lol. Laughing

    Anyway, I think Totenkopf SDL's HUD is best suited for this mod. I should've thought about that before.

    WolferCooker
    Hardcore Wolfer
    Hardcore Wolfer

    Male
    Number of posts : 1166
    Age : 26
    Location : Pennsylvania, U.S.A
    Hobbie : Video games (mostly PC)
    Registration date : 2010-09-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by WolferCooker on Wed Oct 27, 2010 1:51 pm

    Wizzie, here are the pics of all the different artifacts I found. Everybody else, let me know what others I missed.



    Last edited by WolferCooker on Wed Oct 27, 2010 4:00 pm; edited 1 time in total

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Wed Oct 27, 2010 3:32 pm

    Ok,Totenkopf SDL please. How do I go about implementing that?



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Wed Oct 27, 2010 4:17 pm

    Well it seems to me that its gotten rid of the gun display pic, so you'll want to remove any calls to DrawWeapon(). It also looks like it was room for 4 keys. You can find out how to do that (and several other things) here at Poet's site. Armor is pretty much straight forward as well. Add in an armor variable in the gamestate struct and mess with the functions which give the player damage to compensate for armor. You will have to experiment with various formulas for calculating damage with armor.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Wed Oct 27, 2010 5:39 pm

    Are those not for DOS?



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Wed Oct 27, 2010 6:11 pm

    They are but you'll be fine. I've looked them over and you SHOULD be fine. If you do run into a problem it won't be anything major because you aren't messing with the renderer or anything which is controlled by ridiculous amounts of pre-processor code. Adding key's & armor isn't really something which digs super deep into the code. There are differences between the DOS and SDL code, but not to the degree that DOS tutorials are 110% obsolete.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Thu Oct 28, 2010 11:34 am

    Alritey. Do you also happen to know how to add keypad support for playing wolf3d? Thanks.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 28, 2010 12:02 pm

    It uses SDL for input so it should already have support for it.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Thu Oct 28, 2010 12:04 pm

    I meant, that numberpad thingy. Usually on the right hand sides, with the numbers and stuff. That's supported? Surprised Shocker! Unless I was blind, I read that Ack doesn't want to play SDL because it doesn't support number pad.



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 28, 2010 1:27 pm

    Well I went and played a few seconds JUST to make sure. Numpad works as long as you turn numlock OFF. You don't even have to change the keys on the keyboard screen, it works right away.



    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Per-Scan
    Seasoned Wolfer
    Seasoned Wolfer

    Number of posts : 385
    Age : 43
    Location : One year in the future
    Registration date : 2010-09-29

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Per-Scan on Thu Oct 28, 2010 2:30 pm

    Just as an FYI; I play all my games with a wireless numberpad. I've never had any problems. Smile

    Dark_wizzie
    I am Death Incarnate!
    I am Death Incarnate!

    Male
    Number of posts : 5090
    Age : 22
    Location : USA or Tawain
    Job : Student, Part time Cactuar fanatic
    Hobbie : Planting Cactuars.
    Message : I made this forum when I was 13 High on Drugs
    Registration date : 2007-03-24

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dark_wizzie on Thu Oct 28, 2010 5:19 pm

    Ok, then. How do I make it so on level so and so, the player starts off with a pistol and 8 rounds?



    Wolf3d Haven
    Minute Logic Blog

    Dr.Zin
    Bring em' On!
    Bring em' On!

    Male
    Number of posts : 180
    Age : 32
    Location : Nowhere
    Message : General Programmer
    World of Tanks Username: ToreHund
    Registration date : 2010-08-11

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Dr.Zin on Thu Oct 28, 2010 6:01 pm

    [rant]
    Ummm....why not consult the hundreds of tutorials available? You will learn more by experimenting and looking through tutorials rather than just asking how to code every little feature in this thread. Its how anyone even remotely proficient with the code even became proficient. At that point myself and whomever else helps will be doing the coding more so than you would be. At which point I would feel somewhat compelled to ask that my name be featured prominently in the credits Wink. But seriously, try the DHW forums, search still works and there are HUNDREDS of topics on just about every code feature you can think of. I am not opposed to helping with particularly vexing problems, but I am not going to do the work for you.
    [/rant]

    Anyway, use the GameLoop() function for a simple switch block. Use gamestate.mapon in the switch. Each case must be the level number MINUS 1. Within each case block set gamestate.ammo or whatever variables you use or may use in the future to the appropriate values. Seems like the most straight forward method to me as this is somewhat similar to how the game manages the keys when you go to the final level of SoD. Infact, the code which handles that is up near the top of the function's code.

    Simple enough, right? Right.




    If a packet hits a pocket on a socket on a port,
    and the bus is interupted as a very last resort,
    and the address of the memory makes your floppy disk abort
    then the socket packet pocket has an error to report!

    http://radix-16.com/
    Wolf3d Chat

    Sponsored content

    Re: Wolfenstein Never-Ending Coding Thread

    Post by Sponsored content Today at 3:09 pm


      Current date/time is Fri Dec 09, 2016 3:09 pm