[NEW] PvP Rendszer

Indította Sephere92, 2013-12-31, 00:21:01

2013-12-31, 00:21:01 Utolsó szerkesztés: 2013-12-31, 13:11:55 Szerző: Levente98
Sziasztok!  ;)

Keresgéltem EPVP-n egy egy olyan PvP rendszert amibe be lehet állítani hogy pl.: óránként csak 1-szer számolja fel a PvP pontot ezzel elkerülve a "karakter farmolást".
Meg is találtam a questet és a hozzátartozó dolgokat kezdjük is.
Quest:

quest pvp_rendszer begin
state start begin
when kill with npc.is_pc() begin
local ute,hans = pc.get_vid(), npc.get_vid()
pc.select(hans)
local killed_name = pc.get_name()
pc.select(ute)
if get_time() < pc.getqf("waitingtime"..tostring((npc.get_vid()))) then
chat("Nem kaptál pontot "..killed_name.." megöléséért!")
return
else
if pc.getqf("killedtimes"..npc.get_vid()) >= 0 then
pc.setqf("waitingtime"..npc.get_vid(), get_time()+1*60*60)
pc.setqf("killedtimes"..npc.get_vid(), 0)
chat("Következő 1 órában nem kapsz PvP pontot "..killed_name.." megöléséért!")
else
chat("Sikeresen megölted "..killed_name.." játékost!")
chat("Felhasználódra sikeresen jóváírtuk a szükséges pontot!")
local DB_FH = "root"
local DB_JS = "NAVICAT JELSZAVAD"
local ID = pc.get_account_id()
local QUERY = "UPDATE account.account SET pvppont = pvppont + 1 WHERE id = "..ID..";"
os.execute("mysql --host=IPCIMED --user="..DB_FH.." --password="..DB_JS.." --execute='"..QUERY.."'")
pc.setqf("killedtimes"..npc.get_vid(), pc.getqf("killedtimes"..npc.get_vid())+1)
end
end
end
end
end


NAVICAT JELSZAVAD helyére írd be a mysql jelszavad. Fontos a "" közé írd!
IPCIMED helyére írd be a szerver IP-d normális végződéssel.

quest_funcitons:

npc.get_vid



Diff 2089M-hez: ( Diff az új funkció miatt kell! )
This difference file is created by The Interactive Disassembler

game2089
0014E673: 53 56
0014E674: 83 53
0014E675: EC 83
0014E676: 24 EC
0014E677: A1 20
0014E678: F8 8B
0014E679: 28 0D
0014E67A: 4C 20
0014E67B: 08 37
0014E67C: 89 4C
0014E67D: 45 08
0014E67E: F8 A1
0014E67F: 31 F8
0014E680: C0 28
0014E681: A1 4C
0014E682: 20 08
0014E683: 37 89
0014E684: 4C 45
0014E685: 08 F4
0014E686: 85 31
0014E688: 74 8B
0014E689: 74 75
0014E68A: A1 08
0014E68B: 20 90
0014E68C: 37 90
0014E68D: 4C 90
0014E68E: 08 90
0014E68F: 89 90
0014E690: 04 85
0014E691: 24 C9
0014E692: E8 74
0014E693: 59 5C
0014E694: FE A1
0014E695: 00 20
0014E696: 00 37
0014E697: 85 4C
0014E698: C0 08
0014E69A: C3 04
0014E69B: 74 24
0014E69C: 07 E8
0014E69D: 8B 4F
0014E69E: 40 FE
0014E69F: 24 00
0014E6A0: 85 00
0014E6A1: C0 85
0014E6A2: 74 C0
0014E6A3: 13 75
0014E6A4: 31 2F
0014E6A5: C0 C7
0014E6A6: 8B 44
0014E6A7: 55 24
0014E6A8: F8 04
0014E6A9: 33 00
0014E6AA: 15 00
0014E6AB: F8 00
0014E6AC: 28 00
0014E6AD: 4C C7
0014E6AE: 08 44
0014E6AF: 75 24
0014E6B0: 76 08
0014E6B1: 83 00
0014E6B2: C4 00
0014E6B3: 24 00
0014E6B4: 5B 00
0014E6B5: 5D 89
0014E6B6: C3 34
0014E6B7: 89 24
0014E6B8: 1C E8
0014E6B9: 24 03
0014E6BA: E8 63
0014E6BB: 31 18
0014E6BC: 38 00
0014E6BD: ED 8B
0014E6BE: FF 55
0014E6BF: 66 F4
0014E6C0: 3D 33
0014E6C1: 3F 15
0014E6C2: 4E F8
0014E6C3: 75 28
0014E6C4: DF 4C
0014E6C5: C7 08
0014E6C6: 44 B8
0014E6C7: 24 01
0014E6C8: 04 00
0014E6C9: 5F 00
0014E6CB: 00 75
0014E6CC: 00 4C
0014E6CD: 89 83
0014E6CE: 1C C4
0014E6CF: 24 20
0014E6D0: E8 5B
0014E6D1: 3B 5E
0014E6D2: 56 5D
0014E6D3: ED C3
0014E6D4: FF 8B
0014E6D5: C7 80
0014E6D6: 04 FC
0014E6D7: 24 00
0014E6DA: 00 52
0014E6DB: 00 50
0014E6DC: 83 DB
0014E6DD: E8 04
0014E6DE: 01 24
0014E6DF: 89 83
0014E6E0: 44 C4
0014E6E1: 24 08
0014E6E2: 04 DD
0014E6E3: E8 5C
0014E6E4: 68 24
0014E6E5: F6 04
0014E6E6: 17 89
0014E6E7: 00 34
0014E6E8: C7 24
0014E6E9: 44 E8
0014E6EA: 24 D2
0014E6EB: 04 62
0014E6EC: 5F 18
0014E6EE: 00 EB
0014E6EF: 00 CD
0014E6F0: 89 C7
0014E6F1: 1C 44
0014E6F3: 89 0C
0014E6F4: 44 E4
0014E6F5: 24 7B
0014E6F6: 08 33
0014E6F7: E8 08
0014E6F8: 74 C7
0014E6F9: 90 44
0014E6FA: ED 24
0014E6FB: FF 08
0014E6FC: EB 1A
0014E6FD: A6 00
0014E6FE: C7 00
0014E6FF: 44 00
0014E700: 24 C7
0014E701: 0C 44
0014E702: E4 24
0014E703: 7B 04
0014E704: 33 CA
0014E705: 08 7B
0014E706: C7 33
0014E707: 44 08
0014E708: 24 C7
0014E709: 08 04
0014E70A: 1A 24
0014E70B: 00 50
0014E70C: 00 A4
0014E70D: 00 35
0014E70E: C7 08
0014E70F: 44 E8
0014E710: 24 98
0014E711: 04 64
0014E712: CA EB
0014E713: 7B FF
0014E714: 33 E9
0014E715: 08 7B
0014E716: C7 FF
0014E717: 04 FF
0014E718: 24 FF
0014E719: 50 E8
0014E71A: A4 5E
0014E71B: 35 6A
0014E71C: 08 EB
0014E71D: E8 FF
0014E71E: 8A 90
0014E71F: 64 90
0014E720: EB 90
0014E721: FF 90
0014E722: E9 90
00312361: 64 67
00312363: 63 74
00312365: 72 76
00312366: 65 69
00312367: 6D 64
00312368: 61 00


Diff game34083:

This difference file is created by The Interactive Disassembler

game34083
001690C3: 53 56
001690C4: 83 53
001690C5: EC 83
001690C6: 24 EC
001690C7: A1 20
001690C8: 18 A1
001690C9: 14 18
001690CA: 6A 14
001690CB: 08 6A
001690CC: 89 08
001690CD: 45 89
001690CE: F8 45
001690CF: 31 F4
001690D0: C0 8B
001690D1: A1 75
001690D2: F0 08
001690D3: 23 31
001690D4: 6A C0
001690D5: 08 A1
001690D6: 89 F0
001690D7: 04 23
001690D8: 24 6A
001690D9: E8 08
001690DA: F2 89
001690DB: F2 04
001690DC: 00 24
001690DD: 00 E8
001690DE: 85 EE
001690DF: C0 F2
001690E0: 89 00
001690E1: C3 00
001690E2: 74 85
001690E3: 07 C0
001690E4: 8B 74
001690E5: 40 36
001690E6: 2C EB
001690E7: 85 18
001690E8: C0 B8
001690E9: 74 01
001690EA: 15 00
001690EB: 31 00
001690EC: C0 00
001690EF: F8 F4
001690FA: 24 20
001690FC: 5D 5E
001690FD: C3 5D
001690FE: 89 C3
001690FF: F6 90
00169100: 89 8B
00169101: 1C 80
00169102: 24 04
00169103: E8 01
00169104: D8 00
00169105: A4 00
00169106: EB 52
00169107: FF 50
00169108: 66 DB
00169109: 3D 04
0016910A: 3F 24
0016910B: 4E 83
0016910C: 75 C4
0016910D: DD 08
0016910E: C7 DD
0016910F: 44 5C
00169112: 5F 89
00169113: 00 34
00169114: 00 24
00169115: 00 E8
00169116: 89 B6
00169117: 1C E2
00169118: 24 28
00169119: E8 00
0016911A: A2 EB
0016911B: BD CC
0016911C: EB C7
0016911D: FF 44
0016911E: C7 24
00169120: 24 00
00169124: 00 C7
00169125: 83 44
00169126: E8 24
00169127: 01 08
00169128: 89 00
00169129: 44 00
0016912A: 24 00
0016912B: 04 00
0016912C: E8 89
0016912D: BF 34
0016912E: 82 24
0016912F: 28 E8
00169130: 00 9C
00169131: C7 E2
00169132: 44 28
00169133: 24 00
00169134: 04 EB
00169135: 5F B2
00169136: 00 90
00169137: 00 90
00169138: 00 90
00436D02: 64 67
00436D04: 63 74
00436D06: 72 76
00436D07: 65 69
00436D08: 6D 64
00436D09: 61 00


PVPPONT oszlop létrehozása:

1. Megnyitod a navicatot, és belépsz.
2. Bemész a account adatbázisba és jobb klikk a account táblára és design table .
3. Rányomsz az Add field gombra, majd beírod az új oszlop nevének: pvppont, oszlop tipusa "int" legyen!
4. elmented és szerver reboot.


Egyeseknek nem megy a diffelés, tehát..: (DiffPatcher: http://data.hu/get/7261370/diffpatcher.zip )

1. Töltsd le a diff patchert.
2. Töltsd le a game fájlodat filezilláról, és rakd az asztalra a patcher mellé.
3. Nyisd meg a Dif patchert, és nyomj az add file to list gombra.
4. Keresd ki a neked való diff fájlt. Régebbi szerver fájloknál általában: 2089M, új fajtáknál: r34083.
5. Ez eddig kész, most kattints a browse gombra és tallózd be a game fájlod.
6. Kattints az Apply dif files.
7. Hagy hogy lefusson, majd zárd be. A diffelt game fájl neve: game marad a patchelés után. Azt kard vissza FTP-re és adj neki 777 jogot. Szerver reboot és már működik is!



Forrás: EPVP