[Gyűjtőtéma]Kis publikációk

Indította HaWk, 2011-03-29, 07:16:13

Nem szeretném ha elkallódna valamerre, ezért itt is megosztom!

Cabal-GUI VZ kliensbe:

http://www.2shared.com/file/_9eaX-LR/CABAL-GUI_VZ_klienshez.html

2015-02-07, 19:14:36 #121 Utolsó szerkesztés: 2015-02-07, 20:28:41 Szerző: masodikbela
Ma nézegettem a csoportokat, és ugyebár mostanság ki szokták venni a csoportnál a tagok teleportálását, mivel elég sok dolgon át lehet vele rakni a másikat így. Én speciel nagyon hasznos kis funkciónak tartom ezt, de természetesen nem jó, ha ezzel szórakoznak mások, szóval gondoltam megosztom veletek a megoldásom.

Az egész lényege, hogy alapból random koordinátákra teszi a teleportált csoporttagunkat, így én inkább ezt hagytam a fenébe, és inkább koordinátának fixen a csoportvezér koordinátáját adtam meg. Nem, nem fog beszorulni a teleportált játékos a csoport vezetőjébe...

Szóval íme az az egy sor, amit módosítanunk kell a party.cpp-ben, a gamefájlban:

ch->Show(l->GetMapIndex(), x[i], y[i]);
erre:
ch->Show(l->GetMapIndex(), l->GetX(), l->GetY());

Rin felhívta a figyelmemet arra, hogy ha más mapról portolunk csoporttagot, akkor nem látszik a map, meg semmi sem. Ezt úgy küszöbölhetjük ki, hogy:
E fölé:

if (n == 0)
l->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<ĆÄĆĽ> ĆÄĆĽżřŔ» ÇöŔç Ŕ§Äˇ·Î ĽŇČŻÇŇ Ľö ľř˝Ŕ´Ď´Ů."));
else
{
ch->Show(l->GetMapIndex(), l->GetX(), l->GetY());
ch->Stop();
}


Beillesztjük ezt:

if (l->GetMapIndex() != ch->GetMapIndex())
{
l->ChatPacket(CHAT_TYPE_INFO, "<Csoport> Azonos pályán kell tartózkodnotok!");
return;
}


Amennyiben a kliensünkben le van tiltva pythonban ez a funkció, így engedélyezhetjük:
(Disco HU kliensében néztem csak meg)

## Warp
if skillLevel >= 35:
if self.stateButtonDict.has_key(self.MEMBER_BUTTON_WARP):
button = self.stateButtonDict[self.MEMBER_BUTTON_WARP]
button.SetPosition(xPos, y)
button.Show()
xPos += 23


Ez a rész alapból simán ki van kommentelve (igen, én már leszedtem róla), vegyük le róla azt, és működni fog. (__ShowStateButton funkcióban találod ezeket az uiparty.py-ben.)

Így természetesen bármilyen klienst is használnak, nem fognak tudni átbugoltatni másokat a falakon ezzel a módszerrel.
Ha nem látod a válaszom, valamit elrontottál:

2015-02-18, 13:56:33 #122 Utolsó szerkesztés: 2015-11-14, 18:18:59 Szerző: gterx
Szép napot.
Elhoztam nektek egy vps tűzfalat.
Ha tetszik jöhet a like.
A mellékletet tedd bele ide: /usr/local/etc mappába
Puttyba/vboxba: ee /etc/rc.conf
firewall_enable="YES"
firewall_script="/usr/local/etc/ipfw.rules"

reboot és bent van a tűzfal

Ami fontos ne sima etc mappába tedd mert kizárod magad.


Ha segítettem kérem a "+"-t.
ElsÅ' az elsÅ'k között, Az emberek istent játszanak engedély nélkül.

2015-02-19, 19:41:18 #123 Utolsó szerkesztés: 2015-10-04, 07:29:41 Szerző: 66Dragon99
karneváli kosztümök (forrás: gf vagy a spanyolok ,de amúgy lényegtelen)
tartalom icon>item> tga képek és ymir work>pc és pc2> szokásos 4 kaszt modelljei+sapik  ???

ha a link nem menne http://kepfeltoltes.hu/thumb/150219/y_www.kepfeltoltes.hu_.png
letöltés:
carneval_xy.rar 4.4 MB
https://mega.nz/#!t0MX0RDB!oOkI-IlspT2wd5i51YfSr3nxd6FcaYog9S-st0g7NQ0 (<- az új megás link)

Reup.: pipa!
nincs megosztható adat

2015-02-24, 16:15:47 #124 Utolsó szerkesztés: 2015-02-24, 16:20:49 Szerző: huzsihun1997
Sziasztok, irtam egy quest-et, ami ha lejár a szorzó, magátol rak újra szorzót, igy nem kell GM ként állitgatni. Hogyha event-et tartotok, pl dupla exp stb, akkor kilehet kapcsolni a questet.
Minden birodalomnak kulon lehet allitani szorzot, a birodalom varos örnel
quest autoszorzokpasztmc begin
        state start begin
when 11000.chat."Autómatikus Szorzó" or 11002.chat."Autómatikus Szorzó" or 11004.chat."Autómatikus Szorzó" with pc.is_gm() begin
say_title("Város Őr :")
say("Itt tudod beállitani a szorzókat")
say("A Szorzók 24 óránként magától beállitódnak")
say("Igy nem kell az exp táblával szórakoznod,")
say("Sem pedig folyton szorzót állitani")
say("")
say_reward (" Mit szeretnél csinálni?")
local s = select("Szorzó Bekapcsolás","Szorzó Kikapcsolás","Vissza")
if s == 1 then
say_title("Város Őr :")
say("Szeretnéd beállitani a szorzókat?")
local a = select("Igen", "Nem")
if 1 == a then
say("A Szorzó beállitva")
server_loop_timer("autoszorzok", 20*60*60)
__give_empire_priv(0, 1, XXX, 24*60*60) --AZ XXX HELYÉRE IRD BE A KIVÁNT TÁRGY DROP %OT, PL 100, AKKOR 100% TÁRGY DROP LESZ
__give_empire_priv(0, 2, YYY, 24*60*60) --AZ YYY HELYÉRE IRD BE A KIVÁNT YANG DROP %OT, PL 100, AKKOR 100% YANG DROP LESZ
__give_empire_priv(0, 4, ZZZ, 24*60*60) --A ZZZ HELYÉRE IRD BE A KIVÁNT EXP DROP %OT, PL 100, AKKOR 100% EXP BÓNUSZ LESZ
end
end
if s == 2 then
say_title("Város Őr :")
say("Az autómatikus szorzó kikapcsolva!")
clear_server_timer("autoszorzok")
end
end
when autoszorzok.server_timer begin
__give_empire_priv(0, 1, XXX, 24*60*60) --AZ XXX HELYÉRE IRD BE A KIVÁNT TÁRGY DROP %OT, PL 100, AKKOR 100% TÁRGY DROP LESZ
__give_empire_priv(0, 2, YYY, 24*60*60) --AZ YYY HELYÉRE IRD BE A KIVÁNT YANG DROP %OT, PL 100, AKKOR 100% YANG DROP LESZ
__give_empire_priv(0, 4, ZZZ, 24*60*60) --A ZZZ HELYÉRE IRD BE A KIVÁNT EXP DROP %OT, PL 100, AKKOR 100% EXP BÓNUSZ LESZ
end
end
end

2015-03-17, 11:02:21 #125 Utolsó szerkesztés: 2015-03-17, 14:44:55 Szerző: [MOD]Step
Kerestem de nem találtam ilyen publikálást, így feltettem megára az én vs-emet.
https://mega.co.nz/#!wkoAiZwI!e1Qb2NFYnJw6cH78KeHII2OyG8Rvzw11yQYkDMlXTfA
az Sp1 hozzá meg itt:
http://www.microsoft.com/en-us/download/details.aspx?id=10986
Sok sikert mindenkinek.
Ha segítettem ne sajnáld a + t.

Sziasztok  hoztam nektek 3 uj  birodalom kepet ezeketet mutatja a jatekos fele  folot.
Ami ma meggyötör,holnap gyÅ'zni segít.

2015-03-22, 19:06:03 #127 Utolsó szerkesztés: 2015-03-23, 16:38:11 Szerző: [MOD]Step
Sziasztok!
Epvp-n találtam egy szép kis taskbar-t és login interface-hez való fájlokat.
Sajnos ezek csak .psd fájlok, tehát aki tud, annak írnia kell hozzá srcipt-et.
Képek:


Linkek:
http://www.elitepvpers.com/forum/metin2-pserver-designs-websites-scripts/3373744-release-psd-bigpack-feistygraphic-initial-interface-design.html
http://www.elitepvpers.com/forum/metin2-pserver-designs-websites-scripts/3373810-release-psd-taskbar-design-feistygraphic.html

2015-03-26, 15:03:16 #128 Utolsó szerkesztés: 2015-03-26, 15:18:04 Szerző: [MOD]Step
Helló, találtam a gépemen egy questet, még nem használtam.
A quest lényege, egy tárgyért ad kosztümöt!
Gondoltam ide kirakom nektek.

A quest.

[spoiler]quest kosztum begin
    state start begin
        when 50130.use begin
            say_title("Kosztümök")
            say("Szeretnél kosztümöt kapni?")
local s = select("Igen", "Nem")
if s == 2 then
return
end

local esely = math.random(205)
if esely >= 1 and esely <= 2 then
pc.removeitem(50130)
pc.give_item2(45086)
return
end
if esely >= 3 and esely <= 4 then
pc.removeitem(50130)
pc.give_item2(45085)
return
end
if esely >= 5 and esely <= 6 then
pc.removeitem(50130)
pc.give_item2(45084)
return
end
if esely >= 7 and esely <= 8 then
pc.removeitem(50130)
pc.give_item2(45083)
return
end
if esely >= 9 and esely <= 10 then
pc.removeitem(50130)
pc.give_item2(45082)
return
end
if esely >= 11 and esely <= 12 then
pc.removeitem(50130)
pc.give_item2(45081)
return
end
if esely >= 13 and esely <= 14 then
pc.removeitem(50130)
pc.give_item2(45080)
return
end
if esely >= 15 and esely <= 16 then
pc.removeitem(50130)
pc.give_item2(45079)
return
end
if esely >= 17 and esely <= 18 then
pc.removeitem(50130)
pc.give_item2(45078)
return
end
if esely >= 19 and esely <= 20 then
pc.removeitem(50130)
pc.give_item2(45077)
return
end
if esely >= 21 and esely <= 22 then
pc.removeitem(50130)
pc.give_item2(45076)
return
end
if esely >= 23 and esely <= 24 then
pc.removeitem(50130)
pc.give_item2(45075)
return
end
if esely >= 25 and esely <= 26 then
pc.removeitem(50130)
pc.give_item2(45074)
return
end
if esely >= 27 and esely <= 28 then
pc.removeitem(50130)
pc.give_item2(45073)
return
end
if esely >= 29 and esely <= 30 then
pc.removeitem(50130)
pc.give_item2(45072)
return
end
if esely >= 31 and esely <= 32 then
pc.removeitem(50130)
pc.give_item2(45071)
return
end
if esely >= 33 and esely <= 34 then
pc.removeitem(50130)
pc.give_item2(45070)
return
end
if esely >= 35 and esely <= 36 then
pc.removeitem(50130)
pc.give_item2(45069)
return
end
if esely >= 37 and esely <= 38 then
pc.removeitem(50130)
pc.give_item2(45068)
return
end
if esely >= 39 and esely <= 40 then
pc.removeitem(50130)
pc.give_item2(45067)
return
end
if esely >= 41 and esely <= 42 then
pc.removeitem(50130)
pc.give_item2(45066)
return
end
if esely >= 43 and esely <= 44 then
pc.removeitem(50130)
pc.give_item2(45065)
return
end
if esely >= 45 and esely <= 46 then
pc.removeitem(50130)
pc.give_item2(45064)
return
end
if esely >= 47 and esely <= 48 then
pc.removeitem(50130)
pc.give_item2(45063)
return
end
if esely >= 49 and esely <= 50 then
pc.removeitem(50130)
pc.give_item2(45062)
return
end
if esely >= 51 and esely <= 52 then
pc.removeitem(50130)
pc.give_item2(45061)
return
end
if esely >= 53 and esely <= 54 then
pc.removeitem(50130)
pc.give_item2(45058)
return
end
if esely >= 55 and esely <= 56 then
pc.removeitem(50130)
pc.give_item2(45057)
return
end
if esely >= 57 and esely <= 58 then
pc.removeitem(50130)
pc.give_item2(45056)
return
end
if esely >= 59 and esely <= 60 then
pc.removeitem(50130)
pc.give_item2(45055)
return
end
if esely >= 61 and esely <= 62 then
pc.removeitem(50130)
pc.give_item2(45054)
return
end
if esely >= 63 and esely <= 64 then
pc.removeitem(50130)
pc.give_item2(45053)
return
end
if esely >= 65 and esely <= 66 then
pc.removeitem(50130)
pc.give_item2(45050)
return
end
if esely >= 67 and esely <= 68 then
pc.removeitem(50130)
pc.give_item2(45049)
return
end
if esely >= 69 and esely <= 70 then
pc.removeitem(50130)
pc.give_item2(45048)
return
end
if esely >= 71 and esely <= 72 then
pc.removeitem(50130)
pc.give_item2(45047)
return
end
if esely >= 73 and esely <= 74 then
pc.removeitem(50130)
pc.give_item2(45046)
return
end
if esely >= 75 and esely <= 76 then
pc.removeitem(50130)
pc.give_item2(45045)
return
end
if esely >= 77 and esely <= 78 then
pc.removeitem(50130)
pc.give_item2(45044)
return
end
if esely >= 79 and esely <= 80 then
pc.removeitem(50130)
pc.give_item2(45043)
return
end
if esely >= 81 and esely <= 82 then
pc.removeitem(50130)
pc.give_item2(45042)
return
end
if esely >= 83 and esely <= 84 then
pc.removeitem(50130)
pc.give_item2(45041)
return
end
if esely >= 85 and esely <= 86 then
pc.removeitem(50130)
pc.give_item2(45040)
return
end
if esely >= 87 and esely <= 88 then
pc.removeitem(50130)
pc.give_item2(45039)
return
end
if esely >= 89 and esely <= 90 then
pc.removeitem(50130)
pc.give_item2(45038)
return
end
if esely >= 91 and esely <= 92 then
pc.removeitem(50130)
pc.give_item2(45037)
return
end
if esely >= 93 and esely <= 94 then
pc.removeitem(50130)
pc.give_item2(45036)
return
end
if esely >= 95 and esely <= 96 then
pc.removeitem(50130)
pc.give_item2(45035)
return
end
if esely >= 97 and esely <= 98 then
pc.removeitem(50130)
pc.give_item2(45034)
return
end
if esely >= 99 and esely <= 100 then
pc.removeitem(50130)
pc.give_item2(45033)
return
end
if esely >= 101 and esely <= 102 then
pc.removeitem(50130)
pc.give_item2(45032)
return
end
if esely >= 103 and esely <= 104 then
pc.removeitem(50130)
pc.give_item2(45031)
return
end
if esely >= 105 and esely <= 106 then
pc.removeitem(50130)
pc.give_item2(45030)
return
end
if esely >= 107 and esely <= 108 then
pc.removeitem(50130)
pc.give_item2(45029)
return
end
if esely >= 109 and esely <= 110 then
pc.removeitem(50130)
pc.give_item2(45028)
return
end
if esely >= 111 and esely <= 112 then
pc.removeitem(50130)
pc.give_item2(45027)
return
end
if esely >= 113 and esely <= 114 then
pc.removeitem(50130)
pc.give_item2(45026)
return
end
if esely >= 115 and esely <= 116 then
pc.removeitem(50130)
pc.give_item2(45025)
return
end
if esely >= 117 and esely <= 118 then
pc.removeitem(50130)
pc.give_item2(45024)
return
end
if esely >= 119 and esely <= 120 then
pc.removeitem(50130)
pc.give_item2(45023)
return
end
if esely >= 121 and esely <= 122 then
pc.removeitem(50130)
pc.give_item2(45022)
return
end
if esely >= 123 and esely <= 124 then
pc.removeitem(50130)
pc.give_item2(45021)
return
end
if esely >= 125 and esely <= 126 then
pc.removeitem(50130)
pc.give_item2(45020)
return
end
if esely >= 127 and esely <= 128 then
pc.removeitem(50130)
pc.give_item2(45019)
return
end
if esely >= 129 and esely <= 130 then
pc.removeitem(50130)
pc.give_item2(45018)
return
end
if esely >= 131 and esely <= 132 then
pc.removeitem(50130)
pc.give_item2(45017)
return
end
if esely >= 133 and esely <= 134 then
pc.removeitem(50130)
pc.give_item2(45016)
return
end
if esely >= 135 and esely <= 136 then
pc.removeitem(50130)
pc.give_item2(45015)
return
end
if esely >= 137 and esely <= 138 then
pc.removeitem(50130)
pc.give_item2(45014)
return
end
if esely >= 139 and esely <= 140 then
pc.removeitem(50130)
pc.give_item2(45013)
return
end
if esely >= 141 and esely <= 142 then
pc.removeitem(50130)
pc.give_item2(45012)
return
end
if esely >= 143 and esely <= 144 then
pc.removeitem(50130)
pc.give_item2(45011)
return
end
if esely >= 145 and esely <= 146 then
pc.removeitem(50130)
pc.give_item2(45010)
return
end
if esely >= 147 and esely <= 148 then
pc.removeitem(50130)
pc.give_item2(45009)
return
end
if esely >= 149 and esely <= 150 then
pc.removeitem(50130)
pc.give_item2(45008)
return
end
if esely >= 151 and esely <= 152 then
pc.removeitem(50130)
pc.give_item2(45007)
return
end
if esely >= 153 and esely <= 154 then
pc.removeitem(50130)
pc.give_item2(45006)
return
end
if esely >= 155 and esely <= 156 then
pc.removeitem(50130)
pc.give_item2(45005)
return
end
if esely >= 157 and esely <= 158 then
pc.removeitem(50130)
pc.give_item2(45004)
return
end
if esely >= 159 and esely <= 160 then
pc.removeitem(50130)
pc.give_item2(45003)
return
end
if esely >= 161 and esely <= 162 then
pc.removeitem(50130)
pc.give_item2(41152)
return
end
if esely >= 163 and esely <= 164 then
pc.removeitem(50130)
pc.give_item2(41151)
return
end
if esely >= 165 and esely <= 166 then
pc.removeitem(50130)
pc.give_item2(41150)
return
end
if esely >= 167 and esely <= 168 then
pc.removeitem(50130)
pc.give_item2(41149)
return
end
if esely >= 169 and esely <= 170 then
pc.removeitem(50130)
pc.give_item2(41148)
return
end
if esely >= 171 and esely <= 172 then
pc.removeitem(50130)
pc.give_item2(41147)
return
end
if esely >= 173 and esely <= 174 then
pc.removeitem(50130)
pc.give_item2(41146)
return
end
if esely >= 175 and esely <= 176 then
pc.removeitem(50130)
pc.give_item2(41145)
return
end
if esely >= 177 and esely <= 178 then
pc.removeitem(50130)
pc.give_item2(41144)
return
end
if esely >= 179 and esely <= 180 then
pc.removeitem(50130)
pc.give_item2(41143)
return
end
if esely >= 181 and esely <= 182 then
pc.removeitem(50130)
pc.give_item2(41142)
return
end
if esely >= 183 and esely <= 184 then
pc.removeitem(50130)
pc.give_item2(41141)
return
end
if esely >= 185 and esely <= 186 then
pc.removeitem(50130)
pc.give_item2(41140)
return
end
if esely >= 187 and esely <= 188 then
pc.removeitem(50130)
pc.give_item2(41139)
return
end
if esely >= 189 and esely <= 190 then
pc.removeitem(50130)
pc.give_item2(41138)
return
end
if esely >= 191 and esely <= 192 then
pc.removeitem(50130)
pc.give_item2(41137)
return
end
if esely >= 193 and esely <= 194 then
pc.removeitem(50130)
pc.give_item2(41136)
return
end
if esely >= 195 and esely <= 196 then
pc.removeitem(50130)
pc.give_item2(41135)
return
end
if esely >= 197 and esely <= 198 then
pc.removeitem(50130)
pc.give_item2(41134)
return
end
if esely >= 199 and esely <= 200 then
pc.removeitem(50130)
pc.give_item2(41133)
return
end
if esely >= 201 and esely <= 202 then
pc.removeitem(50130)
pc.give_item2(41132)
return
end
if esely >= 203 and esely <= 204 then
pc.removeitem(50130)
pc.give_item2(41131)
return
end
if esely >= 204 and esely <= 205 then
pc.removeitem(50130)
pc.give_item2(41130)
return
end
        end
    end
end
[/spoiler]

Sziasztok, irtam nektek egy quest-et.

A lényege anyi, hogy a playerek tudnak GM funkciókat használni a questben (yangot, szintet adni maguknak, tárgyat adni, átváltozni és teleportálni)

De nem tudnak semmi mást, pl leállitani a szervert, vagy kill-elni stb.

A Kezdő (give_weapon.quest) et is beleirhatod az elejére.

quest login begin
state start begin
when login begin
--Ide beirhatod a kezdő kódodat
end

when letter begin
send_letter('Huzsihun')
end

when button or info begin
say_title('Huzsihun v1')
say('')
local f_menu_names = {'Tárgy Adás', 'Yang Adás', 'Exp Adás', 'Átváltozás', 'Teleport', 'Vissza'}
local f_selected = select_table(f_menu_names)
if f_selected == 1 then
login.targyadas()
elseif f_selected == 2 then
login.yangadas()
elseif f_selected == 3 then
login.expadas()
elseif f_selected == 4 then
login.atvaltozas()
elseif f_selected == 5 then
login.teleport()
end
end

function targyadas()
say_title('Huzsihun v1')
say('')
say('Tárgy adáshoz, ird be a tárgy kódját, és menyiségét')
say('Példa: 19,1 Ez ad egy darab kard +9-et')
local f_values = split(input('19,1'), ',')
local f_item_number = tonumber(f_values[1])
local f_item_amount = tonumber(f_values[2])
if f_item_number == 1 then
pc.give_gold(f_item_amount)
else
pc.give_item2(f_item_number)
end
local f_item_locale_name = item_name(f_item_number)
if f_item_locale_name != '' then
f_item_locale_name = ' ('..f_item_locale_name..')'
end
notice_all('Huzsihun: '..pc.name..' szerzett egy itemet '..'['..f_item_number..','..f_item_amount..']'..f_item_locale_name)
end

function yangadas()
say_title('Huzsihun v1')
say('')
say('Ird be hogy menyi yangot szeretnél.')
local f_gold_amount = tonumber(input())
pc.give_gold(f_gold_amount)
notice_all('Huzsihun: '..pc.name..' szerzett '..f_gold_amount..' yangot')
end

function expadas()
say_title('Huzsihun v1')
say('')
say('Ird be hogy menyi tapasztalatot szeretnél.')
local f_exp_amount = tonumber(input())
pc.give_exp2(f_exp_amount)
notice_all('Huzsihun: '..pc.name..' szerzett '..f_exp_amount..' tapasztalatot')
end

function atvaltozas()
say_title('Huzsihun v1')
say('')
say('Ird be a szörny kodját amivé átszeretnél változni, és hogy menyi ideig, másodpercben.')
say('Példa, 101,10 ez vadkutyává változtat 10 másodpercre')
say('*Viszaváltozáshoz ird be: 0,0')
local f_values = split(input(), ',')
local f_polymorph_mob_number = tonumber(f_values[1])
local f_polymorph_mob_seconds = tonumber(f_values[2])
pc.polymorph(f_polymorph_mob_number, f_polymorph_mob_seconds)
local f_polymorph_mob_locale_name = mob_name(f_polymorph_mob_number)
if f_polymorph_mob_locale_name != '' then
f_polymorph_mob_locale_name = ' ('..f_polymorph_mob_locale_name..')'
end
notice_all('Huzsihun: '..pc.name..' átváltozott '..'['..f_polymorph_mob_number..','..f_polymorph_mob_seconds..']'..f_polymorph_mob_locale_name)
end

function teleport()
say_title('Huzsihun v1')
say('')
say('Teleportáláshoz ird be a kivánt koordinátát')
say('pl: 100,100 xkoordi, ykoordi')
local f_values = split(input(), ',')
local f_x = tonumber(f_values[1])
local f_y = tonumber(f_values[2])
pc.warp(f_x,f_y)
notice_all('Huzsihun: '..pc.name..' elteleportált '..'['..f_x..','..f_y..']')
end
end
end

2015-04-01, 13:16:52 #130 Utolsó szerkesztés: 2015-04-01, 13:28:17 Szerző: huzsihun1997
Egy ölés számláló questet irtam, azoknak akik nem tudnak gui-t beüzemelni, illetve nem tudnak CMDCHAT-et használni.
Minden ölés után kiirja lent, hogy menyit ölt eddig az illető.

quest szamlalo begin
state start begin
when kill begin
        local count = d.getf("szornyek") + 1
            chat("Te eddig "..count.." szörnyet öltél meg.")
            d.setf("szornyek", count)
          end
end
end

Új Quest Funkció 0,1% Tárgy dobás


Sziasztok!

Írtam nektek egy questet, ami anyit tesz, hogy ha valakinek még az 1% is szok, (1 a 100 hoz esély) akkor ezzel tud akár 0,1% esélyel is beálítani a dropba esélyt.

a quest

quest alternativdrop begin
    state start begin
        when kill with not npc.is_pc() begin 
        local tb ={
        {25040,9}, -- 0,9% esély
        {50011,7}, -- 0,7% esély
        {50033,20}, --2% esély
}
        table.foreach(tb,
            function(i, p)
                zf = number(1, 1000)
                    if zf <= p[2] then
                        game.drop_item_with_ownership(p[1], 1)
                    end
                end
            )
        end
    end
end


Hozzáadni tárgyat a "local tb" nél tudtok.

új tárgy hozzáadása:

    {TÁRGY ID, ESÉLY SZÁZALÁKBAN*10},

Sziasztok.
Ide rakom a huzsihun által kirakott lekötésnek a magyar questjét mivel ott németül van, igaz nem tökéletes a fordítás de legalább így már érthető lesz mindenki számára. Bár  én kipróbáltam de igazából semmi hasznát nem láttam ennek az egésznek, mivel ez úgy működne ha jól tudom, hogy vérteket fegyvereket és ékszereket lehetne a számlához kötni vagyis se kövezni se optokat forgatni nem lehetne ha egy adott tárgy le van kötve, itt ki sem jelölhetem mit szeretnék lekötni és néztem a felvett itemeket mindegyikben lehetett optot forgatni ki is tudom dobni őket vagyis én semmi értelmét nem látom ennek. De mivel lefordítottam így kirakom, használjátok egészséggel.

quest block_items begin
state start begin

when login begin
if pc.getqf("block_items_register") == 1 then
if pc.getqf("block_items_active") == 1 then
cmdchat("Item lekötés")
else
cmdchat("Item lekötés feloldva|")
end
end
end

when 9010.chat."Item lekötés" begin
if pc.getqf("block_items_register") == 0 then
say_title("Item lekötése")
say("Üdvözöllek "..pc.get_name())
say("Annak érdekében, hogy ezt a rendszert használd")
say("be kell jelentkezned vagy regisztrálnod kell.")
say("Szeretnéd használni a lekötést / feloldást?")
if select("Igen","Nem") == 1 then
say("Most adja meg a jelszavát.")
say("Kérjük, ne feledje, csak számokat!")
local pw = tonumber(input())
if pw == nil then say("Ez a jelszó érvénytelen.") return end
say("Kérem, adja meg a jelszavát és")
say("azonnal készül a mentés az itemről.")
say_reward("A jelszavad : "..pw)
say("")
pc.setqf("block_items_register" , 1)
pc.setqf("block_items_pw" , pw)
end
return
end

say("Üdvözöllek "..pc.get_name())
say("Kérjük, írja be a jelszót.")
local a = select("Jelszó megadása ", "Elfelejtett jelszó ", "Kilépés ")
if a == 1 then
say("Jelszó megadása.")
local pw = tonumber(input())
if pw == nil then say("Ez a jelszó érvénytelen.") return end
if pw != pc.getqf("block_items_pw") then say("Ez a jelszó nem megfelelő. ") return end
say("A jelszó érvényes.")
wait()
local estado
if pc.getqf("block_items_active") == 1 then
estado = "Feloldás"
else
estado = "Lekötés"
end
say("Üdvözöljük a beállítás menüben: "..pc.get_name())
say("Rendszer : "..estado)
say("Mit szeretnél csinálni?")
local s = select("Item lekötése", "Item feloldása", "Jelszó változtatás", "Kilépés")
if s == 1 then
if pc.getqf("block_items_active") == 1 then say("Az item lekötés aktiválva.") return end
cmdchat("ManagerBlockItems BlockItems|")
say("Item lekötve.")
pc.setqf("block_items_active", 1)
elseif s == 2 then
if pc.getqf("block_items_active") == 0 then say("Az item lekötés feloldva.") return end
cmdchat("ManagerBlockItems UnBlockItems|")
say("Item feloldva.")
pc.setqf("block_items_active", 0)
elseif s == 3 then
say("Tehát megszeretnéd változtatni a jelszavad...")
say("Adja meg a jelszavát.")
local pw = tonumber(input())
if pw == nil then say("Ez a jelszó érvénytelen.") return end
if pw == pc.getqf("block_items_pw") then say("A jelszó nem lehet azonos.") return end
say("Sikeresen megváltoztattad a jelszavad.")
say_reward("A jelszó : "..pw)
pc.setqf("block_items_pw" , pw)
end

elseif a == 2 then
--[[
say("Hogyan szeretné visszaállítani a jelszót?")
local c = select("E-mail", "Titkos válasz", "Kilépés")
if c == 1 then
--]]
local email = mysql_query("SELECT email from account.account where id = "..pc.get_account_id()..";")[1][1]
say("A jelszó visszaállításához érvényes")
say("e-mail címet kell megadni.")
say("")
say("")
local mail = input()
if mail != email then say("Az e-mail cím rossz.") return end
local new = number(10000, 99999)
say("A jelszó : "..new)
say("Kérjük jegyezze meg a jelszót.")
pc.setqf("block_items_pw" , new)
end
end
end
end

2015-05-02, 21:29:24 #133 Utolsó szerkesztés: 2015-05-02, 21:33:06 Szerző: Sephere92
Feltöltöttem a metin2dev-es VDI-t amelyen a forrás fájlok is vannak a google drive fájl megosztóra, és erről szeretném a linket megosztani mindenkivel.

https://drive.google.com/file/d/0BwOhT6iIgrg0c3Y3LURfRXZ2Vnc/edit

2015-05-06, 19:27:23 #134 Utolsó szerkesztés: 2016-02-07, 18:07:11 Szerző: T0gy3R
% mutatása betöltés közben
----------------------------------

Üdv mindenkinek!
Apróbb kliens modding ami a %-t írja betöltés közben

1) nyisd meg az introloading.py
1.1) Keresd: "self.loadingImage.SetScale(width, height)"
1.2) Illeszd be alá: "self.loadingGage.SetPercentage(2, 100)"

1.3) Keresd: "self.loadingGage=self.GetChild("FullGage")"
1.4) Illeszd be alá: "self.loadingLoadingPercent=self.GetChild("LoadingPercent_Text")"

1.5) Keresd: "def __SetProgress"
1.6) Illeszd be alá: "self.loadingLoadingPercent.SetText(str(2+98*p/100)+"%")"


2) nyisd meg az uiscript/loadingwindow.py file-t
2.1) Keresd: " "name" : "FullGage","
2.2) Illeszd be alá:
{
"name" : "LoadingPercent_Text",
"type" : "text",

"x" : 366, #Ezt modosítsd ha nem megfelelő a helye
"y" : 3, #Ezt modosítsd ha nem megfelelő a helye

"text" : "",
"vertical_align" : "center",                   
},


3)Ugyan ezt beilleszted a locale/**/ui/loadingwindow.py-be


HA mindent jól csináltál így néz ki valahogy:


forrás: Epvp
Üdv.:T0gy3R

2015-05-27, 20:03:07 #135 Utolsó szerkesztés: 2015-08-25, 22:04:29 Szerző: 66Dragon99
kép.:
letöltés.: minotaurpet.rar 11.7 MB
letöltésértkattintside
egyéb lehetőség a letöltésére.: http://www.4shared.com/rar/Qr_n6FOQce/minotaurpet.html
forrás.: a spanyoloktól megjegyzés.: használjátok egészséggel.
Idéz2.8-as exportálású modell
::)
nincs megosztható adat

Egyeseknek talán ismerős a probléma, hogy 40k-nál ha az itemshop az item_award-ba teszi a tárgyakat, akkor a tárgyak legfeljebb 2 kőfoglalatot fognak elbírni, azaz függetlenül attól, hogy mit állítottál az item_protoba be, maximum 2 követ fogsz tudni berakni.

Íme a javítás:
cilentmanager.cpp / RESULT_SAFEBOX_LOAD függvény

Keress rá erre:
DWORD dwSocket2 = 0;

Írd át erre:
DWORD dwSocket2 = pItemAward->dwSocket2;

A problémát egyébként az okozza, hogy mint látható, definiáláskor az alap értéke 0 a változónak, és ha lejjebb megyünk, csak akkor olvassa be a valódi socket2 értéket, ha (pItemTable->bType == ITEM_UNIQUE), egyébként 0-át fog állítani a tárgynak.
Ha nem látod a válaszom, valamit elrontottál:

2015-05-30, 18:45:57 #137 Utolsó szerkesztés: 2016-06-14, 16:09:17 Szerző: 66Dragon99
Mindenkiben felmerült a kérdés.: Hova lett a metinben a madarak többsége? A válasz egyszerű valami  gonosz erő eltűntette őket (metinkövek,kapzsi modellezők, lusta fejlesztők vagy csak valamelyik mob megette őket...)Az én variációim a következők .: A) valaki fegyverként árulja egy másik szigeten ; B) tűzföldön elégtek ; C) mirelitté váltak Sohan-hegyen.
http://kepfeltoltes.hu/150530/csirke_www.kepfeltoltes.hu_.png
letöltés.: kakas_csirke_helyett.rar 158 KB (5db modell 2db ikon ~íj és tőr/kard/harang/pallos helyett egy 32x32es )
kattintside



Pentagrama szettje
->7 model 0 ikon + a szett textúrái
letöltési link a szett modelljeihez+textúráihoz

az ikonok letöltése


6 fegyver set (csak modellek+textúrák);forrás E.Mercury  (jah tom,hogy borsot törtem a pormagics orra alá,de ezt azér ők se akarták komolyan felhasználni...van enzeknél a pár szettnél jobb is a világban)

armefacut.rar 426.7
LETÖLTÉSI LINK
nincs megosztható adat

Sziasztok

Szeretnék veletek megosztani pár új, a WYG fejlesztői(dev) indítóból(r7071) kiolvasott python függvényt.
Egyiket sem teszteltem le, de ránézésre működőképesek. Próbáltam arra törekedni, hogy úgy nézzen ki, mint ahogy az valójában kinézhet az új indító forrásában. Vannak olyan funkciók is, melyek nem igen használhatóak fel, pld a lélekhez kötési rendszerrel kapcsolatosak és egy a vállpánt rendszerrel kapcsolatos metódus. Sok port nem zavar, ha ki van makrózva ;). Berakáshoz nem írok leírást, logikus gondolkodással és egy kis leleményességgel lazán megoldható a dolog.

Lista az új parancsokról:
Player modul:

  • player.GetItemSealDate(window_type, pos)
  • player.GetItemUnSealLeftTime(window_type, pos)
  • player.CanSealItem(ItemVnum, [window_type=INVENTORY,] pos)
  • player.IsAntiFlagBySlot([window_type=INVENTORY,] pos, AntiFlag)
  • player.IsSealedItemBySlot([window_type=INVENTORY,] pos)
  • player.GetItemTypeBySlot([window_type=INVENTORY,] pos)
  • player.GetItemSubTypeBySlot([window_type=INVENTORY,] pos)
  • player.IsSameItemVnum(ItemVnum, [window_type=INVENTORY,] pos)

  • Item modul:

  • item.IsSealScroll(ItemVnum)
  • item.IsItemUsedForDragonSoul(ItemVnum[, window_type=INVENTORY])
  • item.GetDefaultSealDate()
  • item.GetUnlimitedSealDate()
  • item.GetRefinedVnum()
  • item.IsAcceScroll(ItemVnum)

  • A hozzájuk tartozó más fájlba való részeket is odaírtam.

    [C++] METIN2 New Official functions - Pastebin.com

    ui.: A szögletes zárójelben lévő paraméter elhagyható, ezesetben az ott látható egyenlőség jel utáni érték lesz az alapértelmezett.


    [spoiler]Szpojleresen megjegyezném...[spoiler]Oppá[spoiler]Naggggyonnn ssszpojler ;D[spoiler]...hogy ha sikerült kivitelezni a lélekhezkötést, megosztom ;), de felesleges kérdezgetni róla.[spoiler]Csak akkor csinálom, mikor kedvem is és időm is van hozzá, szóval nem sietek vele :D, és ez nem ígéret, csak megjegyzés![/spoiler][/spoiler][/spoiler][/spoiler][/spoiler]

    Akkor már én is kirakom a saját Player csatlakozó guestem.:)

    Ki írja a játékos nevét, birodalmát, illetve kasztját.:)


    http://www.kephost.com/image/FXTQ


    A quest hozzá:


    quest login begin
    state start begin
    when login begin
    if pc.getqf("login") == 0 then
    pc.setqf("login", 1)
    say_title("Üdvözöllek")
    say("")
    say ("Jó szórakozást kívánunk a szerveren!")
    say ("Tiszteld a játékos társaidat!")
    say ("Viselkedj kultúráltan!")
    say ("Sok sikert a játékon belül")
    notice_all("Új játékos csatlakozott a szerverhez!")
    notice_all("Név:".. pc.get_name() .."")
    if pc . empire == 1 then
    notice_all ("Birodalom: Shinsoo")
    elseif pc . empire == 2 then
    notice_all ("Birodalom: Chunjo")
    elseif pc . empire == 3 then
    notice_all ("Birodalom: Jinno")
    end
    if pc . job == 0 then
    notice_all ("Kaszt: Harcos")
    pc . give_item2 ( "16" , 1 )
    pc . give_item2 ( "11206" , 1)
    elseif pc . job == 1 then
    notice_all ("Kaszt: Ninja")
    pc . give_item2 ( "1006" , 1 )
    pc . give_item2 ( "11406" , 1 )
    elseif pc . job == 2 then
    notice_all ("Kaszt: Sura")
    pc . give_item2 ( "16" , 1 )
    pc . give_item2 ( "11606" , 1 )
    elseif pc . job == 3 then
    notice_all ("Kaszt: Sámán")
    pc . give_item2 ( "5006" , 1 )
    pc . give_item2 ( "11806" , 1 )
    end
    end
    end
    end
    end


    A questben, minden karakter kap a kasztjának megfelelő alap fegyver, és vért +6ot. Arra írod a szöveget és a tárgyakat amire akarod.:)

    Ha ügyes vagy, kombinálhatod avval, hogy az illető férfi, vagy nő. De ebben már nem segítek.:D