also erstmal, ich wusst nicht genau wie ich das Thema jetzt nennen sollte und ob es hier hinein gehört. Falls nicht tut es mir Leid.
Mein Problem ist, das ich meinen Bot ca von 1 Uhr Nachts bis Mittags 13-16 Uhr laufen habe. Da ich eigentlich nicht so auf das 24/7 botusen stehe wollte ich fragen, ob es nicht einen Script gibt mit dem ich dem Bot sage, das er nach 5 Stunden auf hören soll oder wenigstens nach einer bestimmten Anzahl an Runs. Hoffe mir kann jemand helfen!
Wenn es dir reicht, wenn der Bot einfach im selben Spiel bleibt und sich ab und zu mal bewegt, ließe sich das umsetzen. Wenn man es gerne komplizierter hat, könnte man es sogar so machen, dass der Bot im Hauptmenu wartet, wobei das dann schon sehr viel aufwändiger ist, als die erste Variante.
Es würde schon reichen wenn er einfach in dem letzten Game stehen bleibt.
Danke für so schnelle Antwort ^^
Du müsstest aber trotzdem noch dazu sagen, welche D2NT Version du verwendest, damit man so ungefähr weiß, wie man das ganze gestaltet, damit es hinterher auch kompatibel ist.
Ich habe mal schnell ein Script dafür geschrieben, wobei ich direkt mal dazu sage, dass ich es wenig bis garnicht getestet habe und es durchaus noch fehlerlastig sein könnte:
Code:
/**
* This file was written by
* Check the programming section for updates and further scripts
* Last Update: 13:45 05.10.2011
*/
var Runtimes = "16:00-22:00;23:00-6:00";
function NTMain()
{
Include("libs/common/NTCommon.ntl");
NTC_IncludeLibs();
NTC_IncludeConfig("NTBot/char_configs");
NT_LoadConfig();
NTSI_LoadNIPFiles("NTBot/item_configs");
MWC_Initialize();
var _now, _runtimes, _startTime, _endTime;
var i;
NTTMGR_TownManager();
me.maxgametime = 0;
_runtimes = Runtimes.replace(/ /g, "").split(";");
_startTime = new Array();
_endTime = new Array();
for(var i = 0; i < _runtimes.length; i++)
_runtimes[i] = _runtimes[i].replace(/0([0-9])/g, "$1"); // Get rid of zeroes at that might lead to misinterpretations when parsing.
while(true)
{
_now = new Date();
if(_now)
{
for(i = 0; i < _runtimes.length; i++)
{
_startTime.hours = parseInt(_runtimes[i].split("-")[0].split(":")[0]);
_startTime.minutes = parseInt(_runtimes[i].split("-")[0].split(":")[1]);
_endTime.hours = parseInt(_runtimes[i].split("-")[1].split(":")[0]);
_endTime.minutes = parseInt(_runtimes[i].split("-")[1].split(":")[1]);
if(isNaN(_startTime.hours) || isNaN(_startTime.minutes) || isNaN(_endTime.hours) || isNaN(_endTime.minutes) || _startTime.hours == _endTime.hours && _startTime.minutes == _endTime.minutes)
continue;
if(_startTime.hours < _endTime.hours)
{
if(_startTime.hours <= _now.getHours() && _endTime.hours > _now.getHours())
{
if(_startTime.hours == _now.getHours() && _startTime.minutes <= _now.getMinutes() || _endTime.hours == _now.getHours() && _endTime.minutes > _now.getMinutes())
break;
}
}
else if(_startTime.hours == _endTime.hours)
{
if(_startTime.hours == _now.getHours() && _startTime.minutes <= _now.getMinutes() && _endTime.minutes >= _now.getMinutes())
break;
}
else
{
if(_startTime.hours <= _now.getHours() || _endTime.hours > _now.getHours())
{
if(_startTime.hours == _now.getHours() && _startTime.minutes <= _now.getMinutes() || _endTime.hours == _now.getHours() && _endTime.minutes > _now.getMinutes())
break;
}
}
}
if(i < _runtimes.length)
break;
}
if(me.act != 1 || !NTC_InTown())
NTTM_CheckAct(1, true);
switch(Random(0, 200))
{
case 0:
NTTM_TownMove("gheed")
break;
case 25:
NTTM_TownMove("charsi")
break;
case 50:
NTTM_TownMove("akara")
break;
case 75:
NTTM_TownMove("kashya")
break;
case 100:
NTTM_TownMove("cain")
break;
case 125:
NTTM_TownMove("stash")
break;
case 150:
NTTM_TownMove("portalspot")
break;
case 175:
NTTM_TownMove("waypoint")
break;
case 200:
NTTM_TownMove("warriv")
break;
default:
NTC_Delay(2500);
break;
}
NTC_Delay(1000);
}
NTC_SendMsgToScript("MWBotGame.ntj", "SCRIPT_END");
}
Du gibst oben analog zu dem verwendeten Format die Zeiträume (beliebig viel, getrennt mit Semikola) ein, in denen dein Bot laufen soll. Wenn du das Bot Scripst nun einfügst (sinnvollerweise als erstes Script) führt es ein Delay und einige zufällige Positionswechsel in einer Endlosschleife aus.
Bei jedem Durchlauf wird die aktuelle Uhrzeit geprüft, sobald diese in einem der angegebenen Intervalle liegt, wird das Script beendet.
Super danke dir auf jeden Fall erst mal! Ich werde es wohl heute nicht mehr testen da ich zu müde bin, aber morgen auf jeden Fall. Nur eine Frage noch, wo kommt das jetzt genau rein? In die eigentliche Char config oder die global settings im char config Ordner?
[TUT]Hack löschen nach einer gewissen Zeit 02/04/2013 - Metin2 Hacks, Bots, Cheats, Exploits & Macros - 10 Replies Hier ein Code wie ihr eure Hacks löschen könnt, zum Beispiel ein Klau Bot oder ähnliches.. :)
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide() 'Versteckt das Prog beim starten
Timer1.Interval = "300000" 'Zeit bis zum Löschen
Timer1.Start() 'Startet Timer 1 :)
End Sub
Probleme beim Laden nach ner gewissen Zeit 01/13/2011 - Metin2 - 5 Replies hallo also ich hab folgendes problem wenn ich einen laden auf mache dann steht das bild anch ner gewissen zeit wie löse ich dies ?
nach einer längeren zeit... 08/05/2010 - Diablo 2 - 1 Replies Servus leute =)
nach einer längeren pause von d2 fange ich nun wieder an
Was ich bräuchte wäre 2x cd keys unmuted/unbanned
und hilfe beim einstellen des Kuk bots- bitte um erfahrene leute (beim letzten versuch hatte ich kein invi mehr -.-)
bräuchte noch nen baaler dem ich mich rannhängen könnte ^^
program um pc nach einer bestimmten zeit 04/28/2006 - Main - 8 Replies herunter zu fahren
text2schild.php?smilienummer=1&text=THX IM VORRAUS' border='0' alt='THX IM VORRAUS' />