Draco.exe Posted July 12, 2012 Author Share Posted July 12, 2012 Hello all, i edited the Alatar's Quest System to work in Dx8 Eclipse (nightly eclipse), there are few edits, but the code is basically the same so **all credits are for Alatar and for jcsnider** (because he helped me with some hints for text rendering in Dx8).**This is the original source tutorial made for EO 2.0: [http://www.touchofde…est-system-v12/](http://www.touchofdeathforums.com/community/index.php?/topic/117080-eo-alatars-quest-system-v12/)**_To open the quest editor type **/editquest**_**You can download a version with the Quest System already integrated to Nightly Eclipse here:****[http://www.mediafire…209v4kuht4tdntb](http://www.mediafire.com/?209v4kuht4tdntb)****Or add the quest system manually following this guide:**(Sorry if my english isn't the best)First of all, download the extra files here and add them to your project (make a backup of frmMain and frmEditor_Npc): [http://www.freemmorp…6a525aca133.zip](http://www.freemmorpgmaker.com/files/imagehost/pics/348f7ef9ec49d17664f196a525aca133.zip)**Server side:****Add modSvQuests.bas to your project****modCombat**find:```If Len(Trim$(NPC(npcNum).AttackSay)) > 0 Then```add above, after the else:```If NPC(npcNum).Behaviour = NPC_BEHAVIOUR_FRIENDLY Or NPC(npcNum).Behaviour = NPC_BEHAVIOUR_SHOPKEEPER ThenCall CheckTasks(attacker, QUEST_TYPE_GOTALK, npcNum)Call CheckTasks(attacker, QUEST_TYPE_GOGIVE, npcNum)Call CheckTasks(attacker, QUEST_TYPE_GOGET, npcNum)If NPC(npcNum).Quest = YES ThenIf Player(attacker).PlayerQuest(NPC(npcNum).Quest).Status = QUEST_COMPLETED ThenIf Quest(NPC(npcNum).Quest).Repeat = YES ThenPlayer(attacker).PlayerQuest(NPC(npcNum).Quest).Status = QUEST_COMPLETED_BUTExit FunctionEnd IfEnd IfIf CanStartQuest(attacker, NPC(npcNum).QuestNum) Then'if can start show the request message (speech1)QuestMessage attacker, NPC(npcNum).QuestNum, Trim$(Quest(NPC(npcNum).QuestNum).Speech(1)), NPC(npcNum).QuestNumExit FunctionEnd IfIf QuestInProgress(attacker, NPC(npcNum).QuestNum) Then'if the quest is in progress show the meanwhile message (speech2)QuestMessage attacker, NPC(npcNum).QuestNum, Trim$(Quest(NPC(npcNum).QuestNum).Speech(2)), 0Exit FunctionEnd IfEnd IfEnd If```in Sub PlayerAttackNpc find```' send death to the map```add this above:```Call CheckTasks(attacker, QUEST_TYPE_GOSLAY, npcNum)```in the same sub, find```Call OnDeath(victim)```and add this above:```Call CheckTasks(attacker, QUEST_TYPE_GOKILL, victim)```**modGeneral**in InitServer find```ChkDir App.Path & "\Data\", "spells"```add below:```ChkDir App.Path & "\Data\", "quests"```In ClearGameData find:```Call ClearAnimations```add this below:```Call SetStatus("Clearing quests...")Call ClearQuests```In LoadGameData find:```Call LoadAnimations```then add this below:```Call SetStatus("Loading quests...")Call LoadQuests```**modHandleData**Find:```HandleDataSub(CPartyLeave) = GetAddress(AddressOf HandlePartyLeave)```under that add:```HandleDataSub(CRequestEditQuest) = GetAddress(AddressOf HandleRequestEditQuest)HandleDataSub(CSaveQuest) = GetAddress(AddressOf HandleSaveQuest)HandleDataSub(CRequestQuests) = GetAddress(AddressOf HandleRequestQuests)HandleDataSub(CPlayerHandleQuest) = GetAddress(AddressOf HandlePlayerHandleQuest)HandleDataSub(CQuestLogUpdate) = GetAddress(AddressOf HandleQuestLogUpdate)```and at the end of the module add this:```Sub HandleRequestEditQuest(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim Buffer As clsBuffer' Prevent hackingIf GetPlayerAccess(Index) < ADMIN_DEVELOPER ThenExit SubEnd IfSet Buffer = New clsBufferBuffer.WriteLong SQuestEditorSendDataTo Index, Buffer.ToArray()Set Buffer = NothingEnd SubSub HandleSaveQuest(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim n As LongDim Buffer As clsBufferDim QuestSize As LongDim QuestData() As ByteSet Buffer = New clsBufferBuffer.WriteBytes Data()' Prevent hackingIf GetPlayerAccess(Index) < ADMIN_DEVELOPER ThenExit SubEnd Ifn = Buffer.ReadLong 'CLng(Parse(1))If n < 0 Or n > MAX_QUESTS ThenExit SubEnd If' Update the QuestQuestSize = LenB(Quest(n))ReDim QuestData(QuestSize - 1)QuestData = Buffer.ReadBytes(QuestSize)CopyMemory ByVal VarPtr(Quest(n)), ByVal VarPtr(QuestData(0)), QuestSizeSet Buffer = Nothing' Save itCall SendUpdateQuestToAll(n)Call SaveQuest(n)Call AddLog(GetPlayerName(Index) & " saved Quest #" & n & ".", ADMIN_LOG)End SubSub HandleRequestQuests(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)SendQuests IndexEnd SubSub HandlePlayerHandleQuest(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim Buffer As clsBufferDim QuestNum As Long, Order As Long, i As Long, n As LongDim RemoveStartItems As BooleanSet Buffer = New clsBufferBuffer.WriteBytes Data()QuestNum = Buffer.ReadLongOrder = Buffer.ReadLong '1 = accept quest, 2 = cancel questIf Order = 1 ThenRemoveStartItems = False'Alatar v1.2For i = 1 To MAX_QUESTS_ITEMSIf Quest(QuestNum).GiveItem(i).Item > 0 ThenIf FindOpenInvSlot(Index, Quest(QuestNum).RewardItem(i).Item) = 0 ThenPlayerMsg Index, "You have no inventory space. Please delete something to take the quest.", BrightRedRemoveStartItems = TrueExit ForElseIf Item(Quest(QuestNum).GiveItem(i).Item).Type = ITEM_TYPE_CURRENCY ThenGiveInvItem Index, Quest(QuestNum).GiveItem(i).Item, Quest(QuestNum).GiveItem(i).ValueElseFor n = 1 To Quest(QuestNum).GiveItem(i).ValueIf FindOpenInvSlot(Index, Quest(QuestNum).GiveItem(i).Item) = 0 ThenPlayerMsg Index, "You have no inventory space. Please delete something to take the quest.", BrightRedRemoveStartItems = TrueExit ForElseGiveInvItem Index, Quest(QuestNum).GiveItem(i).Item, 1End IfNextEnd IfEnd IfEnd IfNextIf RemoveStartItems = False Then 'this means everything went okPlayer(Index).PlayerQuest(QuestNum).Status = QUEST_STARTED '1Player(Index).PlayerQuest(QuestNum).ActualTask = 1Player(Index).PlayerQuest(QuestNum).CurrentCount = 0PlayerMsg Index, "New quest accepted: " & Trim$(Quest(QuestNum).Name) & "!", BrightGreenEnd If'/alatar v1.2ElseIf Order = 2 ThenPlayer(Index).PlayerQuest(QuestNum).Status = QUEST_NOT_STARTED '2Player(Index).PlayerQuest(QuestNum).ActualTask = 1Player(Index).PlayerQuest(QuestNum).CurrentCount = 0RemoveStartItems = True 'avoid exploitsPlayerMsg Index, Trim$(Quest(QuestNum).Name) & " has been canceled!", BrightGreenEnd IfIf RemoveStartItems = True ThenFor i = 1 To MAX_QUESTS_ITEMSIf Quest(QuestNum).GiveItem(i).Item > 0 ThenIf HasItem(Index, Quest(QuestNum).GiveItem(i).Item) > 0 ThenIf Item(Quest(QuestNum).GiveItem(i).Item).Type = ITEM_TYPE_CURRENCY ThenTakeInvItem Index, Quest(QuestNum).GiveItem(i).Item, Quest(QuestNum).GiveItem(i).ValueElseFor n = 1 To Quest(QuestNum).GiveItem(i).ValueTakeInvItem Index, Quest(QuestNum).GiveItem(i).Item, 1NextEnd IfEnd IfEnd IfNextEnd IfSavePlayer IndexSendPlayerData IndexSendPlayerQuests IndexSet Buffer = NothingEnd SubSub HandleQuestLogUpdate(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)SendPlayerQuests IndexEnd Sub```**modTypes**In Private Type PlayerRec, find:```Dir As Byte```paste this under that:```PlayerQuest(1 To MAX_QUESTS) As PlayerQuestRec```In Private Type NpcRec, find:```Level As Long```paste:```Quest As ByteQuestNum As Long```**modEnumerations**find:```SPartyVitals```paste:```SQuestEditorSUpdateQuestSPlayerQuestSQuestMessage```find:```CPartyLeave```paste:```CRequestEditQuestCSaveQuestCRequestQuestsCPlayerHandleQuestCQuestLogUpdate```**modPlayer**find:```Call SendHotbar(Index)```paste:```Call SendQuests(Index)```In PlayerWarp, find:```' if same map then just send their co-ordinatesIf mapNum = GetPlayerMap(Index) ThenSendPlayerXYToMap Index```paste above the End If:```Call CheckTasks(Index, QUEST_TYPE_GOREACH, mapNum)```then in the same sub find:```TempPlayer(Index).GettingMap = YES```paste:```Call CheckTasks(Index, QUEST_TYPE_GOREACH, mapNum)```In PlayerMapGetItem, find:```SendActionMsg GetPlayerMap(Index), Msg, White, 1, (GetPlayerX(Index) * 32), (GetPlayerY(Index) * 32)```paste:```Call CheckTasks(Index, QUEST_TYPE_GOGATHER, GetItemNum(Trim$(Item(GetPlayerInvItemNum(Index, n)).Name)))```In CheckResource find:```SendMapSound Index, rX, rY, SoundEntity.seResource, Resource_index```paste:```Call CheckTasks(Index, QUEST_TYPE_GOTRAIN, Resource_index)```**Client side:****Add the modQuests and frmEditor_Quest to your project.Replace frmMain and frmEditor_NPC with the new ones. (First make a backup of the Main form and NPC form!!)** _If you don't want to change this forms, go to the end of this message._**Add the graphics files inside the main GUI folder (the buttons inside the buttons folder)****modGameEditors**In NpcEditorInit find:```.txtDamage.text = NPC(EditorIndex).Damage```add:```.chkQuest.Value = NPC(EditorIndex).Quest.scrlQuest.Value = NPC(EditorIndex).QuestNum```**modEnumerations**find:```SPartyVitals```paste:```SQuestEditorSUpdateQuestSPlayerQuestSQuestMessage```find:```CPartyLeave```add:```CRequestEditQuestCSaveQuestCRequestQuestsCPlayerHandleQuestCQuestLogUpdate```**modHandleData**find:```HandleDataSub(SPartyVitals) = GetAddress(AddressOf HandlePartyVitals)```add:```HandleDataSub(SQuestEditor) = GetAddress(AddressOf HandleQuestEditor)HandleDataSub(SUpdateQuest) = GetAddress(AddressOf HandleUpdateQuest)HandleDataSub(SPlayerQuest) = GetAddress(AddressOf HandlePlayerQuest)HandleDataSub(SQuestMessage) = GetAddress(AddressOf HandleQuestMessage)```at the end of the module, paste this:```Private Sub HandleQuestEditor()Dim i As LongWith frmEditor_QuestEditor = EDITOR_TASKS.lstIndex.Clear' Add the namesFor i = 1 To MAX_QUESTS.lstIndex.AddItem i & ": " & Trim$(Quest(i).Name)Next.Show.lstIndex.ListIndex = 0QuestEditorInitEnd WithEnd SubPrivate Sub HandleUpdateQuest(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim n As LongDim Buffer As clsBufferDim QuestSize As LongDim QuestData() As ByteSet Buffer = New clsBufferBuffer.WriteBytes Data()n = Buffer.ReadLong' Update the QuestQuestSize = LenB(Quest(n))ReDim QuestData(QuestSize - 1)QuestData = Buffer.ReadBytes(QuestSize)CopyMemory ByVal VarPtr(Quest(n)), ByVal VarPtr(QuestData(0)), QuestSizeSet Buffer = NothingEnd SubPrivate Sub HandlePlayerQuest(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim Buffer As clsBufferDim i As LongSet Buffer = New clsBufferBuffer.WriteBytes Data()For i = 1 To MAX_QUESTSPlayer(MyIndex).PlayerQuest(i).Status = Buffer.ReadLongPlayer(MyIndex).PlayerQuest(i).ActualTask = Buffer.ReadLongPlayer(MyIndex).PlayerQuest(i).CurrentCount = Buffer.ReadLongNextRefreshQuestLogSet Buffer = NothingEnd SubPrivate Sub HandleQuestMessage(ByVal Index As Long, ByRef Data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long)Dim Buffer As clsBufferDim i As Long, QuestNum As Long, QuestNumForStart As LongDim Message As StringSet Buffer = New clsBufferBuffer.WriteBytes Data()QuestNum = Buffer.ReadLongMessage = Trim$(Buffer.ReadString)QuestNumForStart = Buffer.ReadLongfrmMain.lblQuestName = Trim$(Quest(QuestNum).Name)frmMain.lblQuestSay = MessagefrmMain.lblQuestSubtitle = "Info:"frmMain.picQuestDialogue.Visible = TrueIf QuestNumForStart > 0 And QuestNumForStart <= MAX_QUESTS ThenfrmMain.lblQuestAccept.Visible = TruefrmMain.lblQuestAccept.Tag = QuestNumForStartEnd IfSet Buffer = NothingEnd Sub```**modInput**find:```SendRequestEditSpell```paste below:```Case "/editquest"If GetPlayerAccess(MyIndex) < ADMIN_DEVELOPER Then GoTo ContinueSendRequestEditQuest```**modTypes**In Private Type PlayerRec, find:```Step As Byte```Paste:```PlayerQuest(1 To MAX_QUESTS) As PlayerQuestRec```In Private Type NpcRec, find:```Level As Long```paste:```Quest As ByteQuestNum As Long```**modText**In DrawNpcName find this:```RenderText Font_Default, Name, TextX, TextY, color, 0```paste this below:``` Dim i As LongFor i = 1 To MAX_QUESTS'check if the npc is the next task to any quest: [?] symbolIf Quest(i).Name <> "" ThenIf Player(MyIndex).PlayerQuest(i).Status = QUEST_STARTED ThenIf Quest(i).Task(Player(MyIndex).PlayerQuest(i).ActualTask).NPC = npcNum ThenName = "[?]"TextX = ConvertMapX(MapNpc(Index).x * PIC_X) + MapNpc(Index).xOffset + (PIC_X \ 2) - getWidth(Font_Default, (Trim$(Name)))If NPC(npcNum).Sprite < 1 Or NPC(npcNum).Sprite > NumCharacters ThenTextY = ConvertMapY(MapNpc(Index).y * PIC_Y) + MapNpc(Index).yOffset - 16ElseTextY = ConvertMapY(MapNpc(Index).y * PIC_Y) + MapNpc(Index).yOffset - (Tex_Character(NPC(npcNum).Sprite).Height / 4)End IfRenderText Font_Default, Name, TextX, TextY, YellowExit ForEnd IfEnd If'check if the npc is the starter to any quest: [!] symbol'can accept the quest as a new one?If Player(MyIndex).PlayerQuest(i).Status = QUEST_NOT_STARTED Or Player(MyIndex).PlayerQuest(i).Status = QUEST_COMPLETED_BUT Then'the npc gives this quest?If NPC(npcNum).QuestNum = i ThenName = "[!]"TextX = ConvertMapX(MapNpc(Index).x * PIC_X) + MapNpc(Index).xOffset + (PIC_X \ 2) - getWidth(Font_Default, (Trim$(Name)))If NPC(npcNum).Sprite < 1 Or NPC(npcNum).Sprite > NumCharacters ThenTextY = ConvertMapY(MapNpc(Index).y * PIC_Y) + MapNpc(Index).yOffset - 16ElseTextY = ConvertMapY(MapNpc(Index).y * PIC_Y) + MapNpc(Index).yOffset - (Tex_Character(NPC(npcNum).Sprite).Height / 4)End IfRenderText Font_Default, Name, TextX, TextY, YellowExit ForEnd IfEnd IfEnd IfNext```**modConstants**find:```Public Const MAX_MAINBUTTONS As Long = 6```change the 6 for 7 (if you added more buttons you need to change it to the next one)**modGeneral**In LoadGUI find:```frmMain.picHotbar.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\hotbar.jpg")```add below:```frmMain.picQuestLog.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\questlog.jpg")frmMain.picQuestDialogue.Picture = LoadPicture(App.Path & "\data files\graphics\gui\main\questdialogue.jpg")```In cacheButtons find:```' main - partyWith MainButton(6).fileName = "party".state = 0 ' normalEnd With```add below:```' main - questWith MainButton(7).fileName = "quest".state = 0 ' normalEnd With```**Form Work (only if you don't want to add the frmMain and/or the frmEditor_Npc)****frmEditor_Npc**Add a checkbox (chkQuest), a scrollbar (scrlQuest) and a label (lblQuest). They should look like this. I added a frame (called fraQuest) but is not nescesary :![](http://www.freemmorpgmaker.com/files/imagehost/pics/1b3406580141a06f9341a3b4321307cc.png)then paste this inside the code of the form:```'ALATARPrivate Sub chkQuest_Click()NPC(EditorIndex).Quest = chkQuest.ValueEnd SubPrivate Sub scrlQuest_Change()lblQuest = scrlQuest.ValueNPC(EditorIndex).QuestNum = scrlQuest.ValueEnd Sub'/ALATAR```**frmMain**add to your project the two pictureboxes added to the attachments and add this subs anywhere in frmMain:```'ALATAR'QuestDialogue:Private Sub lblQuestAccept_Click()PlayerHandleQuest CLng(lblQuestAccept.Tag), 1picQuestDialogue.Visible = FalselblQuestAccept.Visible = FalselblQuestAccept.Tag = vbNullStringlblQuestSay = "-"RefreshQuestLogEnd SubPrivate Sub lblQuestExtra_Click()RunQuestDialogueExtraLabelEnd SubPrivate Sub lblQuestClose_Click()picQuestDialogue.Visible = FalselblQuestExtra.Visible = FalselblQuestAccept.Visible = FalselblQuestAccept.Tag = vbNullStringlblQuestSay = "-"End Sub'QuestLog:'Private Sub picQuestButton_Click()' 'Need to be replaced with imgButton(X) and a proper image' UpdateQuestLog' picQuestLog.Visible = Not picQuestLog.Visible' PlaySound Sound_Buttonclick'End SubPrivate Sub imgQuestButton_Click(Index As Integer)If Trim$(lstQuestLog.Text) = vbNullString Then Exit SubLoadQuestlogBox IndexEnd Sub'/ALATAR```Then create a new imgButton (copy and paste any of the others) and set the index to 7 (only if you didn't added new buttons), then replace the Private Sub imgButton_Click with this…again this will work ONLY if you have 7 buttons (the 6 originals and the Quest button)```Private Sub imgButton_Click(Index As Integer)Dim Buffer As clsBufferDim i As Long' If debug mode, handle error then exit outIf Options.Debug = 1 Then On Error GoTo errorhandlerSelect Case IndexCase 1If Not picInventory.Visible Then' show the windowpicInventory.Visible = TruepicCharacter.Visible = FalsepicSpells.Visible = FalsepicOptions.Visible = FalsepicParty.Visible = FalsefrmMain.picInventory.RefreshpicQuestLog.Visible = False' play soundPlaySound Sound_Buttonclick, -1, -1End IfCase 2If Not picSpells.Visible Then' send packetSet Buffer = New clsBufferBuffer.WriteLong CSpellsSendData Buffer.ToArray()Set Buffer = Nothing' show the windowpicSpells.Visible = TruepicInventory.Visible = FalsepicCharacter.Visible = FalsepicOptions.Visible = FalsepicParty.Visible = FalsepicQuestLog.Visible = False' play soundPlaySound Sound_Buttonclick, -1, -1End IfCase 3If Not picCharacter.Visible Then' send packetSendRequestPlayerData' show the windowpicCharacter.Visible = TruepicInventory.Visible = FalsepicSpells.Visible = FalsepicOptions.Visible = FalsepicParty.Visible = FalsepicQuestLog.Visible = False' play soundPlaySound Sound_Buttonclick, -1, -1' RenderfrmMain.picCharacter.RefreshfrmMain.picFace.RefreshEnd IfCase 4If Not picOptions.Visible Then' show the windowpicCharacter.Visible = FalsepicInventory.Visible = FalsepicSpells.Visible = FalsepicOptions.Visible = TruepicParty.Visible = FalsepicQuestLog.Visible = False' play soundPlaySound Sound_Buttonclick, -1, -1End IfCase 5If myTargetType = TARGET_TYPE_PLAYER And myTarget <> MyIndex ThenSendTradeRequest' play soundPlaySound Sound_Buttonclick, -1, -1ElseAddText "Invalid trade target.", BrightRedEnd IfCase 6' show the windowpicCharacter.Visible = FalsepicInventory.Visible = FalsepicSpells.Visible = FalsepicOptions.Visible = FalsepicParty.Visible = TruepicQuestLog.Visible = False' play soundPlaySound Sound_Buttonclick, -1, -1'Alatar v1.2Case 7 'QuestLogpicCharacter.Visible = FalsepicInventory.Visible = FalsepicSpells.Visible = FalsepicOptions.Visible = FalsepicParty.Visible = FalsepicQuestLog.Visible = TrueUpdateQuestLogPlaySound Sound_Buttonclick, -1, -1'/Alatar v1.2End Select' Error handlerExit Suberrorhandler:HandleError "imgButton_Click", "frmMain", Err.Number, Err.Description, Err.Source, Err.HelpContextErr.ClearExit SubEnd Sub```I think that's all, please tell me if you find some bugs or something is missing. Link to comment Share on other sites More sharing options...
jcsnider Posted July 12, 2012 Share Posted July 12, 2012 Now you need to integrate it with the event system so events can process differently based on quest progress. Along with the ability to begin and end quests via events ;)Anyways, good work and keep it up! Link to comment Share on other sites More sharing options...
Jumbofile Posted July 12, 2012 Share Posted July 12, 2012 OMG thank you thank you! Your my hero. Link to comment Share on other sites More sharing options...
Draco.exe Posted July 12, 2012 Author Share Posted July 12, 2012 well, idk how to do that, i'm not very skilled with vb6, but i'll check that and try to figure it out**Update: Added a new part for the tutorial if you don't want to replace the frmMain and/or the frmEditor_NPC (i think i didn't missed nothing about the form work)** Link to comment Share on other sites More sharing options...
Jumbofile Posted July 12, 2012 Share Posted July 12, 2012 You should do what alatars does and make download with it already installed for people who dont have vb6 Link to comment Share on other sites More sharing options...
Draco.exe Posted July 12, 2012 Author Share Posted July 12, 2012 maybe later i'll do that ;) Link to comment Share on other sites More sharing options...
Ariel Posted July 13, 2012 Share Posted July 13, 2012 Is that works in ES:DE? :Dsorry for the dumb Question but what is ES?and since when EO is V3.0 o.O Link to comment Share on other sites More sharing options...
onzinho Posted July 13, 2012 Share Posted July 13, 2012 Open Client -> Login error in serverRun-time error '9':Subscript out of rangeDebug -> Sub CheckTasks -> modSvQuestsLine: If TaskType = Quest(i).Task(Player(Index).PlayerQuest(i).ActualTask).Order Then Link to comment Share on other sites More sharing options...
Draco.exe Posted July 13, 2012 Author Share Posted July 13, 2012 ES = Event System, and v3.0 is just jcsnider Nightly Eclipse: http://www.touchofdeathforums.com/smf2/index.php/topic,80930.0.htmlyou added old quests or accounts to the game? maybe that's causing the error. I have no errors in my game (i'll upload a version with the quest system if you want to download) Link to comment Share on other sites More sharing options...
onzinho Posted July 13, 2012 Share Posted July 13, 2012 I erased everything from the server, it worked.Very good, congratulations. Link to comment Share on other sites More sharing options...
erkro1 Posted July 13, 2012 Share Posted July 13, 2012 ES for Event System is kinda tricky to use, because ES stands for Eclipse Stable too. (its outdated but it can mislead people) Link to comment Share on other sites More sharing options...
Draco.exe Posted July 13, 2012 Author Share Posted July 13, 2012 added a download with Nightly Eclipse and the Quest System integrated and working! Link to comment Share on other sites More sharing options...
Ariel Posted July 14, 2012 Share Posted July 14, 2012 Its not for CS:DE right? please answer me :) Link to comment Share on other sites More sharing options...
Draco.exe Posted July 14, 2012 Author Share Posted July 14, 2012 i remaked the code for Nightly Eclipse, but idk if this will work in CS:DE (i think no) Link to comment Share on other sites More sharing options...
JohnPony Posted July 15, 2012 Share Posted July 15, 2012 Alatar's quest system works with CS:DE, it just requires some D3D8 understanding to render the quest system to a GUI ingame. Link to comment Share on other sites More sharing options...
john93562 Posted July 15, 2012 Share Posted July 15, 2012 Hey..I did in Server Side all you said then press Server.exe and an error pop-up please respond! Link to comment Share on other sites More sharing options...
john93562 Posted July 15, 2012 Share Posted July 15, 2012 *I press make Server.exe Link to comment Share on other sites More sharing options...
Draco.exe Posted July 15, 2012 Author Share Posted July 15, 2012 what error appears? Link to comment Share on other sites More sharing options...
Ariel Posted July 16, 2012 Share Posted July 16, 2012 I know i made it to work already i just cant find a way to render this Listbox :\ (and for some resond the quests doesnt save, i can do it all over again after server restart) Link to comment Share on other sites More sharing options...
farrel24 Posted July 21, 2012 Share Posted July 21, 2012 Are work for Dragon Eclipse??? Link to comment Share on other sites More sharing options...
Hattrick464 Posted July 22, 2012 Share Posted July 22, 2012 -Snip- Link to comment Share on other sites More sharing options...
Enruin Posted July 22, 2012 Share Posted July 22, 2012 Well done, sure this will help a lot of people. :) Link to comment Share on other sites More sharing options...
Hattrick464 Posted July 23, 2012 Share Posted July 23, 2012 Um, I'm have a RTE 9 Subscript out of range; I deleted all the server files (accounts, shops, ect.)and I still get this error. BTW I downloaded the already integrated version and I still get the same error. Help will be very appreciated. Thanks in advance! Link to comment Share on other sites More sharing options...
Draco.exe Posted July 23, 2012 Author Share Posted July 23, 2012 @Lazlike:> Are work for Dragon Eclipse???Nope, for Dragon Eclipse you need to use the original Quest System (my custom engine still works with Dx7…but the next version will work with Directx8)* * *@Ace:> Um, I'm have a RTE 9 Subscript out of range; I deleted all the server files (accounts, shops, ect.)and I still get this error. BTW I downloaded the already integrated version and I still get the same error. Help will be very appreciated. Thanks in advance!when you debug in VB which line is highlighted?(oops, srry for the doublepost, can any1 join the two messages or delete one?) Link to comment Share on other sites More sharing options...
clark Posted September 24, 2012 Share Posted September 24, 2012 Oh wooow thanks !!! ![:)](http://www.touchofdeathforums.com/community/public/style_emoticons/<#EMO_DIR#>/smile.png) i hope it works well (without errors on eclipse advanced) ;D!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now