Diff files¶
Note
This article is about the text difference file format. For the binary patches mainly used for client modification, see Hexing.
A diff file is a file to make:
- implementation of a modification easier
- check what and where you modified things
- share your modifications with the rest of the world
- it is also an easy way for people that give support on forums to check themselves what is wrong to the modifications you made
Creating .diff files using the tortoise menu¶
- right click on the folder
- goto TortoiseSVN menu
- click create patch
- save as .diff file
Manually Creating .diff files (knowing the mechanics and repairing .diffs if needed)¶
- create a new txt file
- rename the .txt extention to .diff
- start with pointing out the index (path where the diff files will patch)
src
- add a
=========================================
line to indicate the next file- example:
=========================================
- example:
- add the patch of the file where content will be removed (
---
) and add the revision- example:
---> src/common/mmo.c (revision 12300 Stable)
- example:
- add the path of the file where content will be added (
+++
) and add (working copy)- example:
+++> src/common/mmo.c (working copy)
- example:
- add the location of the lines that need to be modified in this way:
- add a
space
and write a line that is from the original text (this line will be unmodified) and all others starting with a space- A SPACE IS NEEDED, IF YOU COPY A DIFF FROM A FORUM APPLY THE SPACES YOURSELF
- example:
<space>this line will be unmodified
- add a
-
and write the line that must be modified- example:
-line will be removed from the original code
- example:
- add a
+
and write the line that need to be placed to replace or added to the original code- example:
+this line will be added in the new code
- full example on a @@ -x,7 +x,8 @@:[code]line1: this line will be unmodified
- example:
line2: this line will be unmodified line3:-this line will be deleted line4:+this line will replace line 3 line5:+this
line will add a line of code line6: this line will be unmodified, but will move down one line line7: line8: this line
will be unmodified, move down one line (same as the line above since an
#**[color=red]NOTICE= THE
Using .diff/.patch files to patch your server¶
Windows:
- go place the folder in the index folder
- richt click the *.diff file and go to TortoiseSVN menu
- click patch
Linux:
cd /path/to/your/server/folder
patch -p0 < /path/to/patch/file/filename.extension
Example of a .diff file¶
Index: map/clif.c
===================================================================
--- map/clif.c (revision 13318)
+++ map/clif.c (working copy)
@@ -6745,7 +6745,7 @@
/*==========================================
* Marry [DracoRPG]
*------------------------------------------*/
- void clif_marriage_process(struct map_session_data *sd)
+ /*void clif_marriage_process(struct map_session_data *sd)
{
int fd;
nullpo_retv(sd);
@@ -6755,8 +6755,8 @@
WFIFOW(fd,0)=0x1e4;
WFIFOSET(fd,packet_len(0x1e4));
}
+ */
-
/*==========================================
* Notice of divorce
*------------------------------------------*/
Index: map/clif.h
===================================================================
--- map/clif.h (revision 13318)
+++ map/clif.h (working copy)
@@ -53,8 +53,8 @@
#endif
// packet DB
-#define MAX_PACKET_DB 0x400
-#define MAX_PACKET_VER 22
+#define MAX_PACKET_DB 0x500
+#define MAX_PACKET_VER 23
struct s_packet_db {
short len;