|
You last visited: Today at 10:51
Advertisement
[RLS] Ingame Channel Switcher like WOM2
Discussion on [RLS] Ingame Channel Switcher like WOM2 within the Metin2 PServer Guides & Strategies forum part of the Metin2 Private Server category.
08/02/2015, 23:20
|
#31
|
elite*gold: 115
Join Date: Sep 2013
Posts: 597
Received Thanks: 83
|
Einfallsreich, WoM2 & Penger kopieren.. Wir danken dir für diesen großartigen release...
|
|
|
08/04/2015, 17:38
|
#32
|
elite*gold: 20
Join Date: Jun 2011
Posts: 2,901
Received Thanks: 3,341
|
Ich finde es zwar immer wieder witzig wie die m2 section rumraged aber Naja. Müsst euch echt ned wundern warum kaum C++ zeug released wird.
Naja is ja auch egal.
Hab sowieso mit mt2 nixmehr am Hut.
Sind Grade eher dabei nen komplett eigenes game zu schreiben.
Sollte iwer Modelle in highpoly und für ue4 erstellen können, kann er sich gern melden.
|
|
|
08/04/2015, 23:30
|
#33
|
elite*gold: 0
Join Date: Oct 2011
Posts: 46
Received Thanks: 2
|
It doesn't include game time when the channel is changed
|
|
|
08/06/2015, 00:37
|
#34
|
elite*gold: 0
Join Date: Nov 2014
Posts: 260
Received Thanks: 163
|
Sehr cool, danke!
|
|
|
08/21/2015, 22:43
|
#35
|
elite*gold: 0
Join Date: Aug 2012
Posts: 974
Received Thanks: 89
|
bei mir öffnet es sich gleich nach dem ich eine map betrete :/
|
|
|
10/23/2015, 10:43
|
#36
|
elite*gold: 0
Join Date: Jul 2015
Posts: 11
Received Thanks: 1
|
Guys, i need help, please
Code:
for(int i = 0; i < 4; i++){ //replace with maximum channels -1 actual 1300x - 1330x
for(int i2 = 2; i2 < 9; i2++){ //replace with your core values actual 13x02 - 13x08
micha[13*1000 + i*100 + i2] = i+1;
How should i write it, if i have 2core/ch and i have 6 channel with this ports?
Ch1: 1. 20010 2. 20110
Ch2: 1. 20020 2. 20120
Ch3: 1. 20030 2. 20130
Ch4: 1. 20040 2. 20140
Ch5: 1. 20050 2. 20150
Ch6: 1. 20060 2. 20160
Thanks in advance!
|
|
|
03/14/2016, 23:39
|
#37
|
elite*gold: 20
Join Date: Jun 2011
Posts: 2,901
Received Thanks: 3,341
|
an alle Mods: Tut mir leid, dass ich den Thread pushen muss, aber ich krieg nach wie vor Anfragen wie die Berechnung abläuft.
So für alle nochmal am Beispiel von MartinxHo:
Quote:
How should i write it, if i have 2core/ch and i have 6 channel with this ports?
Ch1: 1. 20010 2. 20110
Ch2: 1. 20020 2. 20120
Ch3: 1. 20030 2. 20130
Ch4: 1. 20040 2. 20140
Ch5: 1. 20050 2. 20150
Ch6: 1. 20060 2. 20160
|
---->non mathematical version
Code:
micha[20010] = 1;
micha[20110] = 1;
micha[20020] = 2;
micha[20120] = 2;
micha[20030] = 3;
micha[20130] = 3;
micha[20040] = 4;
micha[20140] = 4;
micha[20050] = 5;
micha[20150] = 5;
micha[20060] = 6;
micha[20160] = 6;
----> mathematical solution
Code:
for(int i = 1; i <= 6; i++){
for(int i2 = 0; i2 < 2; i2++){
micha[20*1000 + i2*100 + i*10] = i;
|
|
|
03/19/2016, 14:52
|
#38
|
elite*gold: 0
Join Date: Oct 2011
Posts: 46
Received Thanks: 2
|
I need help. I have 4 ch's with 3 core. My ports:
ch11: 13000 ch12: 13050 ch13: 13090
ch21: 13001 ch22: 13051 ch23: 13091
ch31: 13002 ch32: 13052 ch33: 13092
ch41: 13003 ch42: 13053 ch43: 13093
I don't know how mathematical solution should look.
|
|
|
03/20/2016, 18:51
|
#39
|
elite*gold: 20
Join Date: Jun 2011
Posts: 2,901
Received Thanks: 3,341
|
Quote:
Originally Posted by szymex1
I need help. I have 4 ch's with 3 core. My ports:
ch11: 13000 ch12: 13050 ch13: 13090
ch21: 13001 ch22: 13051 ch23: 13091
ch31: 13002 ch32: 13052 ch33: 13092
ch41: 13003 ch42: 13053 ch43: 13093
I don't know how mathematical solution should look.
|
Then simply use Non Mathematical one.
|
|
|
03/22/2016, 16:45
|
#40
|
elite*gold: 0
Join Date: Oct 2011
Posts: 46
Received Thanks: 2
|
Quote:
Originally Posted by xCPx
Then simply use Non Mathematical one.
|
for(int i = 0; i < 4; i++){ //replace with maximum channels -1 actual 1300x - 1330x
for(int i2 = 0; i2 < 3; i2++){ //replace with your core values actual 13x02 - 13x08
micha[13000] = 1;
micha[13050] = 1;
micha[13090] = 1;
micha[13001] = 2;
micha[13051] = 2;
micha[13091] = 2;
micha[13002] = 3;
micha[13052] = 3;
micha[13092] = 3;
micha[13003] = 4;
micha[13053] = 4;
micha[13093] = 4;
}
}
Don't work ;/
|
|
|
03/22/2016, 17:03
|
#41
|
elite*gold: 0
Join Date: Apr 2015
Posts: 428
Received Thanks: 361
|
Quote:
Originally Posted by szymex1
for(int i = 0; i < 4; i++){ //replace with maximum channels -1 actual 1300x - 1330x
for(int i2 = 0; i2 < 3; i2++){ //replace with your core values actual 13x02 - 13x08
micha[13000] = 1;
micha[13050] = 1;
micha[13090] = 1;
micha[13001] = 2;
micha[13051] = 2;
micha[13091] = 2;
micha[13002] = 3;
micha[13052] = 3;
micha[13092] = 3;
micha[13003] = 4;
micha[13053] = 4;
micha[13093] = 4;
}
}
Don't work ;/
|
Without for-loops in outer of position and the rest of code in it.  You should use this like this as a section in your code:
PHP Code:
micha[13000] = 1; micha[13050] = 1; micha[13090] = 1;
micha[13001] = 2; micha[13051] = 2; micha[13091] = 2;
micha[13002] = 3; micha[13052] = 3; micha[13092] = 3;
micha[13003] = 4; micha[13053] = 4; micha[13093] = 4;
|
|
|
03/23/2016, 16:39
|
#42
|
elite*gold: 0
Join Date: Oct 2011
Posts: 46
Received Thanks: 2
|
Quote:
Originally Posted by Lord Metho
Without for-loops in outer of position and the rest of code in it.  You should use this like this as a section in your code:
PHP Code:
micha[13000] = 1;
micha[13050] = 1;
micha[13090] = 1;
micha[13001] = 2;
micha[13051] = 2;
micha[13091] = 2;
micha[13002] = 3;
micha[13052] = 3;
micha[13092] = 3;
micha[13003] = 4;
micha[13053] = 4;
micha[13093] = 4;
|
PHP Code:
void CHARACTER::ChannelSwitch(int new_ch){
long lAddr;
long lMapIndex;
WORD wPort;
long x = this->GetX();
long y = this->GetY();
if (!CMapLocation::instance().Get(x, y, lMapIndex, lAddr, wPort))
{
sys_err("cannot find map location index %d x %d y %d name %s", lMapIndex, x, y, GetName());
return;
}
if(lMapIndex >= 10000){
return;
}
std::map<WORD, int>micha;
micha[13000] = 1;
micha[13050] = 1;
micha[13090] = 1;
micha[13001] = 2;
micha[13051] = 2;
micha[13091] = 2;
micha[13002] = 3;
micha[13052] = 3;
micha[13092] = 3;
micha[13003] = 4;
micha[13053] = 4;
micha[13093] = 4;
int chan;
if(micha.find(wPort) != micha.end()){
chan = micha[wPort];
}else{return;}
Stop();
Save();
if(GetSectree()){
GetSectree()->RemoveEntity(this);
ViewCleanup();
EncodeRemovePacket(this);
}
TPacketGCWarp p;
p.bHeader = HEADER_GC_WARP;
p.lX = x;
p.lY = y;
p.lAddr = lAddr;
p.wPort = (wPort - 100*(chan-1) + 100*(new_ch-1));
GetDesc()->Packet(&p, sizeof(TPacketGCWarp));
}
After selecting a channel crashes character.
|
|
|
07/23/2016, 07:28
|
#43
|
elite*gold: 0
Join Date: May 2015
Posts: 11
Received Thanks: 0
|
Code:
void CHARACTER::ChannelSwitch(int new_ch){
long lAddr;
long lMapIndex;
WORD wPort;
long x = this->GetX();
long y = this->GetY();
if (!CMapLocation::instance().Get(x, y, lMapIndex, lAddr, wPort))
{
sys_err("cannot find map location index %d x %d y %d name %s", lMapIndex, x, y, GetName());
return;
}
if(lMapIndex >= 10000){
return;
}
std::map<WORD, int>micha;
micha[13002] = 1;
micha[13008] = 1;
micha[13102] = 2;
micha[13108] = 2;
micha[13202] = 3;
micha[13208] = 3;
micha[13302] = 4;
micha[13308] = 4;
micha[13402] = 5;
micha[13408] = 5;
micha[13502] = 6;
micha[13508] = 6;
//micha[13002] = 1;
int chan;
if(micha.find(wPort) != micha.end()){
chan = micha[wPort];
}else{return;}
Stop();
Save();
if(GetSectree()){
GetSectree()->RemoveEntity(this);
ViewCleanup();
EncodeRemovePacket(this);
}
TPacketGCWarp p;
p.bHeader = HEADER_GC_WARP;
p.lX = x;
p.lY = y;
p.lAddr = lAddr;
p.wPort = (wPort - 100*(chan-1) + 100*(new_ch-1));
GetDesc()->Packet(&p, sizeof(TPacketGCWarp));
}
but some problem
|
|
|
03/07/2018, 19:18
|
#44
|
elite*gold: 0
Join Date: Jul 2017
Posts: 20
Received Thanks: 0
|
Quote:
Originally Posted by xCPx
Hey.
Da ein gewisser Herr meint mein System als seins auszugeben und zu verkaufen release ich es nun.
Es portet nur auf den andren CH.
Also so wie wenn man von ch1 auf ch99 warpt.
Is ne 10min Arbeit aber naja was solls.
lauft aktuell auf 4 ch´s mit den ports:
ch1:
13002 - 13008
ch2:
13102 - 13108
ch3:
13202 - 13208
ch4:
13302 - 13308
Code:
cmd.cp:
after:
ACMD(do_warp);
add:
ACMD(do_channel_switch);
after:
{ "mall_close", do_mall_close, 0, POS_DEAD, GM_PLAYER },
add:
{ "channel", do_channel_switch, 0, POS_DEAD, GM_PLAYER },
cmd_general.cpp:
after:
ACMD(do_set_run_mode)
{
ch->SetNowWalking(false);
ch->SetWalking(false);
}
add:
ACMD(do_channel_switch)
{
char arg1[256];
one_argument(argument, arg1, sizeof(arg1));
if (!*arg1)
return;
int new_ch;
str_to_number(new_ch, arg1);
if( new_ch <1 || new_ch >4) // REPLACE 2 WITH YOUR MAX_CHANNEL
return;
if (!ch->IsPC())
return;
ch->ChannelSwitch(new_ch);
}
char.h:
after:
void StartWarpNPCEvent();
add:
void ChannelSwitch(int new_ch);
char.cpp:
after:
EVENTFUNC(warp_npc_event)
{
char_event_info* info = dynamic_cast<char_event_info*>( event->info );
if ( info == NULL )
{
sys_err( "warp_npc_event> <Factor> Null pointer" );
return 0;
}
LPCHARACTER ch = info->ch;
if (ch == NULL) { // <Factor>
return 0;
}
if (!ch->GetSectree())
{
ch->m_pkWarpNPCEvent = NULL;
return 0;
}
FuncCheckWarp f(ch);
if (f.Valid())
ch->GetSectree()->ForEachAround(f);
return passes_per_sec / 2;
}
add:
void CHARACTER::ChannelSwitch(int new_ch){
long lAddr;
long lMapIndex;
WORD wPort;
long x = this->GetX();
long y = this->GetY();
if (!CMapLocation::instance().Get(x, y, lMapIndex, lAddr, wPort))
{
sys_err("cannot find map location index %d x %d y %d name %s", lMapIndex, x, y, GetName());
return;
}
if(lMapIndex >= 10000){
return;
}
std::map<WORD, int>micha;
for(int i = 0; i < 4; i++){ //replace with maximum channels -1 actual 1300x - 1330x
for(int i2 = 2; i2 < 9; i2++){ //replace with your core values actual 13x02 - 13x08
micha[13*1000 + i*100 + i2] = i+1;
}
}
//micha[13002] = 1;
int chan;
if(micha.find(wPort) != micha.end()){
chan = micha[wPort];
}else{return;}
Stop();
Save();
if(GetSectree()){
GetSectree()->RemoveEntity(this);
ViewCleanup();
EncodeRemovePacket(this);
}
TPacketGCWarp p;
p.bHeader = HEADER_GC_WARP;
p.lX = x;
p.lY = y;
p.lAddr = lAddr;
p.wPort = (wPort - 100*(chan-1) + 100*(new_ch-1));
GetDesc()->Packet(&p, sizeof(TPacketGCWarp));
}
Py script + howto im Anhang.
wünsche viel Spaß damit.
Sollte jemand das Sash System oder andere C++ sachen brauchen (und zahlungsfähig sein) einfach melden.
PS: Suchen nen Sponsor für ein Newschool Projekt.
Skype: mav2904
|
ich kann mich leider nicht PORTEN
|
|
|
09/28/2018, 13:11
|
#45
|
elite*gold: 410
Join Date: May 2017
Posts: 30
Received Thanks: 6
|
wo finde ich
cmd.cp:
|
|
|
 |
|
Similar Threads
|
[HILFE] InGame Channel Switcher
04/26/2015 - Metin2 Private Server - 4 Replies
Hey ich suche jm, der sich mit dem InGame Channelswitcher auskennt. Habe ihn soweit angepasst. 4 Channel, Fenstergröße angepasst etc. Leider tut er nicht den Channel wechseln, sondern wenn man einen anderen Channel auswähl bleibt das Bild einfach stehen, wie wenn es einen Fehlport gibt.
Hier das Script
import ui
import dbg
import app
import net
import constInfo
import chat
|
Channel switcher
04/20/2014 - Metin2 - 0 Replies
Hello, I would like to switch between channels and log in and pick my character on the server more quickly with just one click. Do you know any program like that?
|
INGAME BONI SWITCHER
09/05/2012 - Metin2 Private Server - 11 Replies
Hallo,
was haltet ihr von einen Ingame Boni Switcher, weil ich weiss nicht, ob ich diesen in meinem Server einbauen soll o. nicht, viele sagen ja, aber manche auch nein, ich wollte ihn einbauen, da ich die Erfahrung habe, das sowieso ca. 90% der User diesen nutzen...
|
Ingame Switcher
07/17/2011 - Metin2 Hacks, Bots, Cheats, Exploits & Macros - 1 Replies
Ich weiß das dieser Ingame-Switcher schon Public ist. Es ist der Dss/Fks Switcher vom v4a Client.Aber da viele nicht wissen wie man die switchtzeit vom diesem Switchtbot niedriger/höher stellt möchte ich euch das heute zeigen .
Als erstes laden wir uns den Ingame Switcher aus diesem Thread hier runter
http://www.elitepvpers.com/forum/metin2-pserver-g uides-strategies/1217385-release-ingame-switcher.h tml
Nun entpackt das Winrar Archiv .Jetzt öffnet ihr die datei uibonuschange.py mit...
|
[Release] Ingame-Switcher
06/05/2011 - Metin2 PServer Guides & Strategies - 24 Replies
Hallo e*pvp,
ich veröffentliche hier meinen Ingame-DSS/FKS-Switcher.
Das eigentliche Script stammt nicht von mir sondern vom v4a-Clienten.
Ich habe es lediglich verändert.
Veränderungen:
Als Menüpunkt, anstelle des HilfeButtons, anwählbar.
Kann DSS & FKS gleichzeitig switchen.
Von 10 auf 1 Switcher reduziert. (Kann auch als MultiSwitcher veröffentlichen wenn es gefragt ist)
|
All times are GMT +1. The time now is 10:52.
|
|