PDA

View Full Version : 4.X(NonBeta) Fix for Omens



SeqTester
09-14-2004, 10:48 PM
This is a fix I compiled with all the fixes from all the posts, I know a few of them where off so I had to figure what was good.

This is the 1st time I have done this so if I did it wrong please let me know.

SeqTester
09-15-2004, 09:06 AM
Please let me know if anyone uses this if it works or not, it works for me.

If this works I am going to try and submiting it to get the 4.x up to date.

thanks,
ST

monklett
09-15-2004, 04:20 PM
Can you either: (1) build patch against current v4.3.x CVS source, and/or (2) post zip/tarball/etc. of all modified files?

Here is what I got after a CVS update and patch:


username@jabartik ShowEQ-4.3.x $ cvs update -C
(Locally modified everquest.h moved to .#everquest.h.1.79)
(Locally modified opcodes.h moved to .#opcodes.h.1.47)
cvs update: Updating showeq
cvs update: Updating showeq/conf
cvs update: Updating showeq/doc
cvs update: Updating showeq/maps
cvs update: Updating showeq/src
U showeq/src/everquest.h
U showeq/src/opcodes.h
username@jabartik ShowEQ-4.3.x $ cd showeq/
username@jabartik showeq $ patch -p0 < 4.x.patch.txt
patching file conf.h.in
Hunk #1 FAILED at 3.
1 out of 1 hunk FAILED -- saving rejects to file conf.h.in.rej
patching file src/decode.cpp
Hunk #1 FAILED at 11.
1 out of 1 hunk FAILED -- saving rejects to file src/decode.cpp.rej
patching file src/everquest.h
Hunk #1 FAILED at 430.
Hunk #2 FAILED at 458.
Hunk #3 FAILED at 503.
Hunk #4 FAILED at 552.
Hunk #5 FAILED at 759.
Hunk #6 FAILED at 777.
Hunk #7 FAILED at 797.
Hunk #8 FAILED at 1021.
Hunk #9 FAILED at 1393.
9 out of 9 hunks FAILED -- saving rejects to file src/everquest.h.rej
patching file src/interface.cpp
Hunk #1 FAILED at 791.
1 out of 1 hunk FAILED -- saving rejects to file src/interface.cpp.rej
patching file src/opcodes.h
Hunk #1 FAILED at 17.
Hunk #2 FAILED at 55.
2 out of 2 hunks FAILED -- saving rejects to file src/opcodes.h.rej
patching file src/player.cpp
Hunk #1 FAILED at 1160.
1 out of 1 hunk FAILED -- saving rejects to file src/player.cpp.rej
patching file src/races.h
Hunk #1 FAILED at 404.
1 out of 1 hunk FAILED -- saving rejects to file src/races.h.rej
username@jabartik showeq $

This patch is a bit big to manually weave in manually, but thanks for taking the time to backport the assorted changes (and there are a few of them, heh) to the 4.3.x version.

SeqTester
09-15-2004, 04:53 PM
Hmm.. I thought I did do it to current CVS, I am sorta new at making patches.

I will look into this a bit more.

SeqTester
09-15-2004, 05:12 PM
I take it I used the wrong command or something, I used "cvs -q diff -u > 4.x.patch.txt" to creat this.

I tried again and I get the same thing when I try to apply my patch.

monklett
09-15-2004, 06:17 PM
I tried again and I get the same thing when I try to apply my patch.

You mean the same errors that I posted?

You may try sync'ing your dev directory (MAKE A COPY!) with CVS with a 'cvs -z3 update -C'. That will overwrite (MAKE A COPY!) any locally-modified files with the older ones currently in CVS. Then copy over your modified files and build the patch from there.

Also, there are a couple of junk trees in the CVS (you can see them if you use Sourceforge's browse source feature), and the CVS address has changed a couple of times. The one I used is at:


$ export CVSROOT=:pserver:[email protected]:/cvsroot/seq


And that is the current 4.3.x non-beta source, as I understand it.

SeqTester
09-15-2004, 10:44 PM
I did just that created a new folder and CVSed 4.x down and added the files I changed to the folder and it did the same.

Is "cvs -q diff -u > 4.x.patch.txt" the right way to do this?

monklett
09-16-2004, 12:43 AM
Is "cvs -q diff -u > 4.x.patch.txt" the right way to do this?
First, don't use '-q' if you're having problems--it quiets the output, heh. Only thing I can see that would be an issue here is that you don't list the directory, so move to the parent directory and try:


'cvs diff -u showeq > patchfile.txt'

Your string looks good otherwise. The '-u' makes diff render output in unified patch format, and the 'showeq' tells diff which directories to work with ('-R' for recursively do each subdirectory is on by default), which is exactly what you want. Other than that, just make sure you're using the right export string (see earlier post).

To test this, try the following in a freshly downloaded CVS directory:


1) cvs login
2) cvs update -C (make sure you have current repository sources)
3) (copy over your modified files)
4) cvs diff -u showeq > patch.txt (create the patch file)
5) cvs update -C (wipe modified files with repository sources)
6) patch -p0 < patch.txt (apply new patch)

It should go in cleanly; if not, then you might need to update your version of CVS. I don't recall the exact version numbers, but I vaguely recall something about versions pre-1.11.3 or so having some issues with the diff outputs. I'm using 1.11.13 and this worked ok for me with a couple of sample files.

Finally, note that if you're adding new files, then you'll need more options on your diff line. Because we don't have write access to the repository, you'll have to tell the diff command to create the new files as part of the patch (there won't be anything to diff against in the repository). However, I'm guessing that is not the case here.

SeqTester
09-16-2004, 12:59 AM
thanks, too late for me tonight. I will look into this in the morning and update my patch.

monklett
09-17-2004, 02:01 AM
I finally finished the OOW download, so of course I needed to get ShowEQ back up and running, heh. Attached is an updated version of SeqTester's unified patch for 4.3.22 (current CVS).

I started with a clean repository download, manually added SeqTester's patch (some of the changes are already in the repostitory version), and then backported the three 5.0 patches by pac1085, ksmith and others, including the fixes for level 70 support, new races, and assort struct changes.

I didn't get a chance to test it very thoroughly, but it worked nicely during the hour or so that I was on tonight; it recognizes spells and the new zones (download the new maps at mapfiend.eq-toolbox.com) and generates skittles. Seemed to work fine in the OOW zones too. Also, the exp display is working again, although I'm not sure how accurate it is.

Thanks to SeqTester, ksmith, pac1085, blackshadow and everyone else that contributed. Let me know how it works out.

SeqTester
09-17-2004, 10:54 AM
Nice job Monklett, I actually did this but did the bad thing of doing it on a windows machine and ended up being a 650k diff :( after that I had to leave and did not get home till late so did not back to it.

Maurgid
09-20-2004, 11:25 AM
Awsome work!


Any chance of a new Tarball for this version?

monklett
09-20-2004, 06:00 PM
Any chance of a new Tarball for this version?
Nope.

I know I sound like a dick for saying this, but the ability to use patches, etc., is simply a necessary prerequisite skill to have if you want to run bleeding edge software like ShowEQ, because that is how the developer community does it.

A tarball might get you back up and running right now, but what would you do tomorrow or next week when another patch is posted?

For both of us, the best long-term solution is to learn to use the same universal formats, procedures, etc., that the developers use. Once you can effectively 'speak the language' you'll soon find yourself doing stuff you never thought possible (like making your own patches) and that can be pretty cool.

And seriously, its not that hard to apply a patch. Just do:

1) cvs login
2) cvs update
3) patch -p0 < patch.txt
4) recompile

And if you have problems applying the patch, let me know and I'll do whatever I can to help you straighten things out.