Page 1 of 2 12 LastLast
Results 1 to 15 of 21
http://idgs.in/344252
  1. #1
    Azuza's Avatar
    Join Date
    Oct 2007
    Posts
    1,121
    Points
    804.80
    Thanks: 20 / 63 / 22

    Default Customizing Ghost++

    Silahkan bagi yang mo share customizing ghost++nya
    Karya ku yang Bodoh..
    http://www.azuza.web.id
    Anda Sopan Saya Segan

    Piano Secret

    Maen dota buat fun, bukan buat bikin stress..

  2. Hot Ad
  3. #2
    reshine's Avatar
    Join Date
    Jan 2008
    Posts
    2,392
    Points
    2,144.55
    Thanks: 26 / 787 / 361

    Default

    mungkin 2 thread ini bisa berguna :

    http://www.indogamers.com/showthread.php?t=242617
    http://www.indogamers.com/showthread.php?t=258818

    itu dah 1 tahun lalu ... perlu penyesuaian beberapa command karena beberapa library terutama di linux dah update versi .. tapi harusnya buat yang bisa linux dia bisa ngerti kok ... dan ada bagusnya jadi gk sembarang user yang bisa buat dan bikin repot ntarnya kkwkwkw ..

    mau dipindahin threadnya juga boleh ...

    tar kapan2 gue bikin yang webstats pake dota openstats
    BOT SICA, ANGGIL :
    statistik : http://bot.dota.web.id
    pendaftaran : http://bunglon.net/viewforum.php?f=239

  4. #3
    Azuza's Avatar
    Join Date
    Oct 2007
    Posts
    1,121
    Points
    804.80
    Thanks: 20 / 63 / 22

    Default

    Done.
    Karya ku yang Bodoh..
    http://www.azuza.web.id
    Anda Sopan Saya Segan

    Piano Secret

    Maen dota buat fun, bukan buat bikin stress..

  5. #4

    Join Date
    Oct 2006
    Posts
    228
    Points
    425.70
    Thanks: 2 / 5 / 5

    Default

    Bang tiuz, saya sudah coba untuk utak atik mengenai pembacaan IP utk ghost di server indogamers agar bisa utk membatasi penggunaan admin hanya dari IP yg sama dengan bot(utk akses bot warnet).... namun kesimpulannya simple, bot tidak bisa membaca IP dari socket kalau user tidak masuk ke dalam Room yang di-cr8 >.<
    Kemungkinannya karna socketnya di modify oleh server indogamers untuk memproteksi pembacaan IP user yg connect ke server indogamers.

    Tapi kalau bot sudah cr8 room and user join, bot bisa membaca IP dengan gampang karna user langsung terkonek dengan Bot.
    Condition yang berlaku ada byk, misalnya: "getip()" atau "Player->GetExternalIPString( )" atau dengan "!IsLAN."
    Utk Clan sih saya liat sekilas gampang, cukup di check melalui "IsClan()" dan command ini berlaku di mana saja.

    Ada beberapa cara2 yg mungkin bisa dilakukan untuk Free Bot for Warnet:
    1) Dengan menambahkan user ke dalam IP list atau SAFE list, saya yakin cara ini bisa dipakai untuk menipu dalam ujicoba bot... namun cara ini tidak efektif karna admin tersebut tetap dapat menjalankan bot command kalau dia main dari luar warnet(dengan kata lain, hanya dimasukan ke daftar saja namun tidak ada pengecekan ulang saat command dilakukan).
    2) Dengan mematikan !autostart..... dan pada saat Owner join, owner diharuskan untuk melakukan spoof check. Pada saat spoof check dilakukan, Bot jg melakukan IP check saat itu. Dan apabila IP sama makanya baru diapprove: "isAdmin = true"(dengan kata lain, admin tersebut bisa membuat room dengan melakukan "!pub bla bla bla", tapi tidak bisa start game karna tidak diakui sebagai owner/admin waktu join). <-- cara ini effektif, man owner harus ketik dua kali.... /r s & !start/!startn/!start force utk memulai game.
    3) Dengan menendang paksa Owner apabila IP-nya tidak sama dengan Bot(jadi ownernya sendiri gak bisa masuk room ^^). Mungkin setelah itu lgs dilanjutkan dengan command !unhost secara automatic... ya kalo mo lebih sopan sekalian Wisp Admin tersebut kalo cr8 room tidak bisa dilakukan dari luar IP

    Saya rasa sih tidak ada cara lain untuk melakukan pengecekan IP. Bind Address yg ada di default.cfg juga memiliki fungsi beda & 100% bukan utk hal ini.

    Saya sebenarnya tidak yakin kalau sumpama socket utk user masuk ke channel ada keterangan IP-nya atau gak(saya belum cek namun saya rasa Indogamers blok keterangan IP-nya jg). Tapi kalau seumpama ada, ada cara ini jg:
    4) mengharuskan Admin yg mau cr8 room utk join channel yang sama dengan Bot terlebih dahulu agar bisa di check ip-nya. <-- kalau seumpama ada yg tau ini benar atau tidak tolong kasih tau yah.

    Saya bisa kerjakan solusi no-3 dengan gampang apabila cara itu boleh(& menurut saya cara itu paling efektif). Tapi ya itu, admin tetap dapat cr8 room untuk setidaknya 10 detik sebelum room tersebut dibubarkan atau begitu dia join room & ketauan IP-nya beda.
    Tapi tolong kasih tau kalau apabila cara ini boleh biar saya gak ngabisin terlalu byk waktu dari keluarga(dan syarat2 lainnya jg yg diperlukan juga yah biar bisa lgs dikerjakan). TY!

  6. The Following User Says Thank You to Falchion For This Useful Post:
  7. #5
    reshine's Avatar
    Join Date
    Jan 2008
    Posts
    2,392
    Points
    2,144.55
    Thanks: 26 / 787 / 361

    Default

    @falchion
    ada command di PVPGN yang bisa liat ip semua user yaitu /NETINFO <id> ... sayangnya command ini di disable di indogamers karena alasan security dimana hanya admin tertentu yang bisa liat command tersebut ...

    dan di channel memang tidak mungkin kita tahu ip dari user yang whisp ke bot karena system PVPGN itu client server jadi chat yang ke kita via whisp itu lewat pvpgn server bukan lgsg dari user ...

    seingat dan sepengetahuan saya yang dimaksud pembatasan ip bagi yang warnet di bind address itu agar hanya yang dari IP tersebut yang bisa melakukan command in-game ... misalkan dirimu add id gue sebagai admin di bot , gue bisa create room tapi saat gue masuk room karena gue bukan dari warnet/ip tersebut gue gk akan bisa command walaupun sudah melakukan spoofcheck ... dengan seperti ini otomatis room harus di unhost karena tidak bisa di start .... ini harusnya sudah cukup memenuhi batasan yang diminta azuza/aphay ..
    BOT SICA, ANGGIL :
    statistik : http://bot.dota.web.id
    pendaftaran : http://bunglon.net/viewforum.php?f=239

  8. #6

    Join Date
    Oct 2006
    Posts
    228
    Points
    425.70
    Thanks: 2 / 5 / 5

    Default

    Quote Originally Posted by reshine View Post
    @falchion
    seingat dan sepengetahuan saya yang dimaksud pembatasan ip bagi yang warnet di bind address itu agar hanya yang dari IP tersebut yang bisa melakukan command in-game ... misalkan dirimu add id gue sebagai admin di bot , gue bisa create room tapi saat gue masuk room karena gue bukan dari warnet/ip tersebut gue gk akan bisa command walaupun sudah melakukan spoofcheck ... dengan seperti ini otomatis room harus di unhost karena tidak bisa di start .... ini harusnya sudah cukup memenuhi batasan yang diminta azuza/aphay ..
    iya, cuman waktu kemaren di test lgs dianggap gagal karna azuza kirim command !pub/!priv dan lgs dibuat oleh bot-nya(blom sempat dilakukan test command in-game).

    tapi memang kalau syaratnya harus begini berarti source file-nya harus ditambah karna bind address saja tidak cukup(malah sebenarnya tidak ada hubungan apa2 dengan pembatasan IP). <-- yg berarti syarat utk Bot-Warnet harus berubah menjadi: pembatasan command In-Game(kalau IP berbeda) & bukan tentang bind address.

    cara yg anda suggest sama dengan yg saya maksud di cara no.2, tapi kalau dipikir2 cara itu kurang efektif karna bisa jadi orang2 join room-nya dan room-nya gak bakalan start2(apalagi kalo adminnya **** stay terus dalam room itu) >.<

    saya akan kerjakan cara no.3 dan akan saya post di sini nanti cara2nya untuk membantu Warnet lain dalam mengerjakan bot mereka.

  9. #7
    reshine's Avatar
    Join Date
    Jan 2008
    Posts
    2,392
    Points
    2,144.55
    Thanks: 26 / 787 / 361

    Default

    cara nomor 3 cukup mudah kok harusnya ... di ghost++ sudah ada function check ip user yang join dan juga check owner room .. tinggal gabungin itu dan samakan dengan config di bind address ..

    untuk unhost sendiri, bisa kok dibikin unhost otomatis setelah sekian waktu room tidak start .. dulu gue pernah bikin room kalau 5 menit tidak start akan lgsg unhost .. modifikasi dilakukan di function yang check kalau room tidak ada owner akan unhost setelah waktu tertentu dengan mengabaikan fungsi check owner ada di dalam room atau tidak ^_^ ...
    BOT SICA, ANGGIL :
    statistik : http://bot.dota.web.id
    pendaftaran : http://bunglon.net/viewforum.php?f=239

  10. #8

    Join Date
    Oct 2006
    Posts
    228
    Points
    425.70
    Thanks: 2 / 5 / 5

    Default

    Dah beres!
    tinggal di add di game_base.cpp:

    Code:
    if ((!UTIL_IsLanIP( Player->GetExternalIP( ) )) && ( Owner ))
    {
    	m_GHost->m_CurrentGame->SetExiting( true );
    	SendChat(Player, m_GHost->m_Language->GetLang("lang_1229"));
    	return;
    }
    Tinggal di add lang_1229 di language.cfg di folder ghost-nya untuk di add message apa...
    dan pastikan code ini ditaruh setelah Owner di-define(kalau seumpama waktu compile error, taruh di line lbh bawah).

    TAPI, tadi waktu saya test wisp-nya tidak jalan... mungkin karna waktu antara unhost room ama wisp-nya terlalu cepat.
    Ada yang tau gak untuk delay command pake apa?
    Saya sebenarnya kurang paham program c++ <--- aslinya jebolan mIRC scripting.

    oh ya satu lg, kalau mau add IP ke UTIL_IsLanIP cukup buka util.cpp, search aja IsLanIP... trus tambahkan IP-nya ke sana.
    Last edited by Falchion; 20-12-10 at 23:44.

  11. #9
    ArioS's Avatar
    Join Date
    Dec 2007
    Location
    On Earth
    Posts
    178
    Points
    237.32
    Thanks: 0 / 10 / 9

    Default

    Quote Originally Posted by Falchion View Post
    Dah beres!
    tinggal di add di game_base.cpp:

    Code:
    if ((!UTIL_IsLanIP( Player->GetExternalIP( ) )) && ( Owner ))
    {
    	m_GHost->m_CurrentGame->SetExiting( true );
    	SendChat(Player, m_GHost->m_Language->GetLang("lang_1229"));
    	return;
    }
    Tinggal di add lang_1229 di language.cfg di folder ghost-nya untuk di add message apa...
    dan pastikan code ini ditaruh setelah Owner di-define(kalau seumpama waktu compile error, taruh di line lbh bawah).

    TAPI, tadi waktu saya test wisp-nya tidak jalan... mungkin karna waktu antara unhost room ama wisp-nya terlalu cepat.
    Ada yang tau gak untuk delay command pake apa?
    Saya sebenarnya kurang paham program c++ <--- aslinya jebolan mIRC scripting.

    oh ya satu lg, kalau mau add IP ke UTIL_IsLanIP cukup buka util.cpp, search aja IsLanIP... trus tambahkan IP-nya ke sana.
    ini untuk filter ip saat command di room kan ? delay command buat apa bro ?
    Last edited by ArioS; 22-12-10 at 19:56.

  12. #10

    Join Date
    Oct 2006
    Posts
    228
    Points
    425.70
    Thanks: 2 / 5 / 5

    Default

    Quote Originally Posted by ArioS View Post
    ini untuk filter ip saat command di room kan ? delay command buat apa bro ?
    bukan, ini untuk filter ip saat owner(admin yg cr8 room) coba join ke lobby room yg dia cr8 sendiri.

    untuk pembatasan command in-game saya pakai:
    Code:
    if (!UTIL_IsLanIP( player->GetExternalIP( ) ))
    {
    	CONSOLE_Print( "[GAME: " + m_GameName + "] admin [" + User + "] mencoba untuk kirim command [" + Command + "] dengan string [" + Payload + "] dari luar IP" );
    	SendChat(player->GetPID(), m_GHost->m_Language->GetLang("lang_1229"));
    	return HideCommand;
    }
    code ini ditaruh di game.cpp... tepat setelah if( AdminCheck || RootAdminCheck ). lang_1229-nya silahkan di-isi sendiri.

    Delay command yg saya maksud kalo dulu di mIRC semacam command /timer atau //timer... man gpp sih, saya bisa pakai loop biasa kalo emang c++ gak punya hal semacam itu.

  13. #11
    ArioS's Avatar
    Join Date
    Dec 2007
    Location
    On Earth
    Posts
    178
    Points
    237.32
    Thanks: 0 / 10 / 9

    Default

    Quote Originally Posted by Falchion View Post
    bukan, ini untuk filter ip saat owner(admin yg cr8 room) coba join ke lobby room yg dia cr8 sendiri.

    untuk pembatasan command in-game saya pakai:
    Code:
    if (!UTIL_IsLanIP( player->GetExternalIP( ) ))
    {
    	CONSOLE_Print( "[GAME: " + m_GameName + "] admin [" + User + "] mencoba untuk kirim command [" + Command + "] dengan string [" + Payload + "] dari luar IP" );
    	SendChat(player->GetPID(), m_GHost->m_Language->GetLang("lang_1229"));
    	return HideCommand;
    }
    code ini ditaruh di game.cpp... tepat setelah if( AdminCheck || RootAdminCheck ). lang_1229-nya silahkan di-isi sendiri.

    Delay command yg saya maksud kalo dulu di mIRC semacam command /timer atau //timer... man gpp sih, saya bisa pakai loop biasa kalo emang c++ gak punya hal semacam itu.
    oh makanya bingung , sangkain u set command inroom di game_base.cpp haha , setau gw di game.cpp.

    untuk loop pakai syntax FOR aja

    contoh : for (x=0; x<100; x++) { blablablabla }

  14. #12

    Join Date
    Oct 2006
    Posts
    228
    Points
    425.70
    Thanks: 2 / 5 / 5

    Default

    ada yg tau cara auto enter -AH gak?
    saya coba taruh code ini di game_base.cpp tapi gak jalan....

    Code:
    if ((m_GHost->m_BlueIsOwner) && (m_GameLoadedTime!=0) && (!m_GameAHMessage) && (m_GetMapType == "dota") && (GetTime()==m_GameLoadedTime+m_GHost->m_GameLoadedPrintah))
    {
    	string AHChars = "abcdefghijklmnopqrstuvwxyz0123456789 -=,.";
    	uint32_t GameNr = GetGameNr();
    	m_HCLCommandString = "-ah";
    	unsigned char EncodingMap[256];
    	unsigned char j = 0;
    	for( uint32_t i = 0; i < 256; i++ )
    	{
    		// the following 7 handicap values are forbidden
    		if( j == 0 || j == 50 || j == 60 || j == 70 || j == 80 || j == 90 || j == 100 )
    		j++;
    		EncodingMap[i] = j++;
    	}
    	unsigned char CurrentSlot = 0;
    	for( string :: iterator si = m_AHCommandString.begin( ); si != m_AHCommandString.end( ); si++ )
    	{
    		while( m_Slots[CurrentSlot].GetSlotStatus( ) != SLOTSTATUS_OCCUPIED )
    		CurrentSlot++;
    		unsigned char HandicapIndex = ( m_Slots[CurrentSlot].GetHandicap( ) - 50 ) / 10;
    		unsigned char CharIndex = AHChars.find( *si );
    		m_Slots[CurrentSlot++].SetHandicap( EncodingMap[HandicapIndex + CharIndex * 6] );
    	}
    	SendAllSlotInfo( );
    	m_GHost->UDPChatSend("|AHsent "+UTIL_ToString(GameNr)+" " + m_GameName);
    	m_GameAHMessage = true;
    	CONSOLE_Print( "[GAME: " + m_GameName + "] successfully encoded AH command string [" + m_AHCommandString + "]" );
    }
    Salahnya di mana yah? apa karna string ah-nya ada tanda kutip yah? ada yg pernah coba blom?

    yg pasti command ini di-execute karna saya sudah test/debug... & cara ini saya ambil dari autoHCL yg sudah ada, tapi entah kenapa gak jalan utk auto enter -ah.

    *EDIT* ahhhh baru sadar setelah post kalau saya pakai m_HCLCommandString = "-ah"; harusnya m_AHCommandString = "-ah";
    wkwkwkwkw ntaran dah kalo dah di ruko aku test. sapa tau lgs jalan.
    Last edited by Falchion; 23-12-10 at 11:18.

  15. #13
    reshine's Avatar
    Join Date
    Jan 2008
    Posts
    2,392
    Points
    2,144.55
    Thanks: 26 / 787 / 361

    Default

    buat -AH ada yg perlu di inget :

    1. -AH cuman ada di map dota ...
    2. -AH harus dimasukkan antara 15-60 detik jadi bukan sesudah game start lgsg dimasukkin
    BOT SICA, ANGGIL :
    statistik : http://bot.dota.web.id
    pendaftaran : http://bunglon.net/viewforum.php?f=239

  16. #14
    [Le]Couture's Avatar
    Join Date
    Mar 2011
    Posts
    163
    Points
    191.70
    Thanks: 0 / 4 / 4

    Default

    kk saya mau nnya, kan saya memakai ghost ++ 17.0 , nah aku ud setting semua, tetapi pas uda cr8 room, saya bisa masuk pdaahal hostport nya = gameport di kompi g yg bs dgunakan utk cr8 room.. so gmn ya solusinya ??

  17. #15

    Join Date
    Apr 2011
    Posts
    34
    Points
    38.40
    Thanks: 28 / 11 / 4

    Default

    Mau tanya donk, ada script buat ghost++ yang sudah di modify? contoh ga bisa !banlast dll, user biasa yang di addadmin ga bisa pake command yang merugikan player lainya.

    sejenis: banlast,muteall, dll

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •