Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Justn

Members
  • Posts

    1129
  • Joined

  • Last visited

    Never

Everything posted by Justn

  1. ~~You need to make sure you delete items maps and players or use a convertor~~ Can you show me what line its highlighting
  2. You also have to make sure u add a save and load sub when the server shuts down or is restarted. If u make them stay on the map there is nothing in the code that makes it save them to map so when server is restarted they will be gone. I have this in my source I did something similar for a house system. I can share with you when I get home if u have issues
  3. Still looking for this if anyone needs to make some quick money
  4. Looking for a sprite converter to convert vx sprites to the eclipse format willing to pay a little to anyone who wants to make one.
  5. > im new to vb6 and have a noob question is this script client side or server side and one more noob question does it load the player on the start map on every log in thanks in advance It is in the server side. On first login it will spawn to the class.ini points you put for the players class.then when a player dies and no map boot properties are set then it will spawn back to the original class spawn in the classes.ini
  6. This guy does good work for cheap prices. He worked with what I needed and gave me even more than I asked for and for same low price he quoted. Very trustworthy and doing it for fun and to help rather than making a lot of money. Great work Jaxx!
  7. OK after "working" with this programmer I would advise everyone here NOT to hire him for any sort of paid work. When I first contacted him to see if he could do some work that I did not have time to work on he responded within a couple of hours. He asked what I needed done and seemed very excited to help. I decided to start of with a couple of simple things he already had advertised on this post to see how things would work out before I had him do other things I needed in my project. He said he would start right away but wanted payment up front. I figured since someone recommended him this would not be a problem.. Once I paid him he said he would start that same evening when he returned from work. A week went by and he never responded. I then checked my source download only to find out he still never downloaded it. After a few more days I asked how it was going. He said he was very busy at work but would work on it that day and update me on the progress. A couple of weeks went by and I asked for a refund. He stated he wanted to link my Dropbox folder to show me what work he has done.. The only thing he had done was added an editor from another engine and a module. Clearly someone with no coding experience would think he had started but I knew he just added a couple of files and nothing else.. A few more weeks went by I asked again. He had another excuse about having the flu and he would work on it again… Keep in mind these were two small features he already has in other projects.. So its been over 2 months and no word from this guy.. I filed a complaint with visa and sent over all of our chat history. So its safe to say with someone of his talent had no intention of finishing what I paid for. DO NOT USE THIS SERVICE YOU HAVE BEEN WARNED
  8. Sekaru has this added in EVB rip it from there. It keeps player in game for a fixed time if they exit or kill the client and not on a safe map
  9. Hello this is a tutorial requested by [Strik3R](http://www.eclipseorigins.com/community/index.php?/user/42684-strik3r/) . We will be adding a new player vital (hunger) that will decrease over time and a player can die if they don't eat. We are also adding to the consumable items so you can eat and get full. Basically this only for hunger. To add thirst just do the tutorial again changing Hunger to Thirst. This tutorial was made with EVB. If you are using EO you just need to change all the TimeGetTime's to "gettickcount" (without the quotes). If you cant get this to work let me know. **Client and Server** **ModTypes** In PlayerRec before End Type add this : ``` 'Player Vitals New HungerTimer As Long ```In ItemRec before End Type add this: ``` addHunger As Long effectHunger As Long ```**ModEnumerations** Add this to the bottom of the server packet list ``` SPlayerHunger ```Next find this: ``` ' Vitals used by Players, Npcs and Classes Public Enum Vitals HP = 1 MP ```Under it add this: ``` Hunger ```The above steps must be done both in the client and the server! **Client** **ModGameEditors** Find this : ``` If frmEditor_Item.cmbType.ListIndex = ITEM_TYPE_CONSUME Then frmEditor_Item.fraVitals.visible = True frmEditor_Item.scrlAddHp.value = .AddHP frmEditor_Item.scrlAddMP.value = .AddMP frmEditor_Item.scrlAddExp.value = .AddEXP frmEditor_Item.scrlCastSpell.value = .CastSpell frmEditor_Item.chkInstant.value = .instaCast ```Under it add this: ``` frmEditor_Item.scrlAddHunger.value = .addHunger frmEditor_Item.scrleffecthunger.value = .effectHunger ```**ModHandleData** In InitMessages add this to the bottom of the rest: ``` HandleDataSub(SPlayerHunger) = GetAddress(AddressOf HandlePlayerHunger) ```At the bottom of ModHandleData add this: ``` Private Sub HandlePlayerHunger(ByVal index As Long, ByRef data() As Byte, ByVal StartAddr As Long, ByVal ExtraVar As Long) Dim buffer As clsBuffer ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Set buffer = New clsBuffer buffer.WriteBytes data() Player(MyIndex).MaxVital(Vitals.Hunger) = buffer.ReadLong Call SetPlayerVital(MyIndex, Vitals.Hunger, buffer.ReadLong) Select Case Player(MyIndex).Vital(Vitals.Hunger) Case 0 frmMain.lblHunger.Caption = "Dead" Case 1 To 20 frmMain.lblHunger.Caption = "Starving" Case 21 To 40 frmMain.lblHunger.Caption = "Very Hungry" Case 41 To 60 frmMain.lblHunger.Caption = "Hungry" Case 61 To 80 frmMain.lblHunger.Caption = "Slightly Hungry" Case 81 To 100 frmMain.lblHunger.Caption = "Full" End Select ' Error handler Exit Sub errorhandler: HandleError "HandlePlayerHunger", "modHandleData", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ```**Server** **modDatabase** In Sub AddChar find these lines: ``` Player(index).Dir = DIR_DOWN Player(index).Map = Class(Player(index).Class).StartMap Player(index).x = Class(Player(index).Class).StartMapX Player(index).y = Class(Player(index).Class).StartMapY Player(index).Dir = DIR_DOWN Player(index).Vital(Vitals.HP) = GetPlayerMaxVital(index, Vitals.HP) Player(index).Vital(Vitals.MP) = GetPlayerMaxVital(index, Vitals.MP) ```Under it add this: ``` Player(index).Vital(Vitals.Hunger) = GetPlayerMaxVital(index, Vitals.Hunger) ```**modServerTCP** find this: ``` Select Case Vital Case HP Buffer.WriteLong SPlayerHp Buffer.WriteLong GetPlayerMaxVital(index, Vitals.HP) Buffer.WriteLong GetPlayerVital(index, Vitals.HP) Case MP Buffer.WriteLong SPlayerMp Buffer.WriteLong GetPlayerMaxVital(index, Vitals.MP) Buffer.WriteLong GetPlayerVital(index, Vitals.MP) ```Under it add this: ``` Case Hunger Buffer.WriteLong SPlayerHunger Buffer.WriteLong GetPlayerMaxVital(index, Vitals.Hunger) Buffer.WriteLong GetPlayerVital(index, Vitals.Hunger) ```**modServerLoop** Find this: ``` For i = 1 To Player_HighIndex If IsPlaying(i) Then If Tick > tmr25 Then ```Under it add this: ``` ' hunger timer If Tick > Player(i).HungerTimer Then If Player(i).Vital(Vitals.Hunger) > 0 Then ' remove 1 hunger point Player(i).Vital(Vitals.Hunger) = Player(i).Vital(Vitals.Hunger) - 1 If Player(i).Vital(Vitals.Hunger) < 0 Then Player(i).Vital(Vitals.Hunger) = 0 If Player(i).Vital(Vitals.Hunger) = 0 Then KillPlayer i End If Call SendVital(i, Vitals.Hunger) ' for every 30,000 in tick Player(i).HungerTimer = timeGetTime + 30000 End If End If ```**modPlayer** Find this in sub OnDeath: ``` ' Restore vitals Call SetPlayerVital(index, Vitals.HP, GetPlayerMaxVital(index, Vitals.HP)) Call SetPlayerVital(index, Vitals.MP, GetPlayerMaxVital(index, Vitals.MP)) ```Under it add this: ``` Call SetPlayerVital(index, Vitals.Hunger, GetPlayerMaxVital(index, Vitals.Hunger)) ```Right under that you should see: ``` Call SendVital(index, Vitals.HP) Call SendVital(index, Vitals.MP) ```Under those two lines add this: ``` Call SendVital(index, Vitals.Hunger) ```In sub UseItem in the consumeable case find this: ``` ' add exp If Item(ItemNum).AddEXP > 0 Then SetPlayerExp index, GetPlayerExp(index) + Item(ItemNum).AddEXP CheckPlayerLevelUp index SendActionMsg GetPlayerMap(index), "+" & Item(ItemNum).AddEXP & " EXP", White, ACTIONMSG_SCROLL, GetPlayerX(index) * 32, GetPlayerY(index) * 32 SendEXP index End If ```Under it add this: ``` ' add hunger If Item(ItemNum).addHunger > 0 Then Player(index).Vital(Vitals.Hunger) = Player(index).Vital(Vitals.Hunger) + Item(ItemNum).addHunger If Player(index).Vital(Vitals.Hunger) > GetPlayerMaxVital(index, Vitals.Hunger) Then Player(index).Vital(Vitals.Hunger) = GetPlayerMaxVital(index,Vitals.Hunger) SendActionMsg GetPlayerMap(index), "mmmm", BrightGreen, ACTIONMSG_SCROLL, GetPlayerX(index) * 32, GetPlayerY(index) * 32 SendVital index, Hunger End If ' effect hunger If Item(ItemNum).effectHunger > 0 Then Player(index).Vital(Vitals.Hunger) = Player(index).Vital(Vitals.Hunger) - Item(ItemNum).effectHunger If Player(index).Vital(Vitals.Hunger) < 0 Then Player(index).Vital(Vitals.Hunger) = 0 ' SendActionMsg GetPlayerMap(Index), "mmmm", BrightGreen, ACTIONMSG_SCROLL, GetPlayerX(Index) * 32, GetPlayerY(Index) * 32 SendVital index, Hunger End If ```**modCombat** In GetPlayerMaxVital you will see this: ``` Case HP Select Case GetPlayerClass(index) Case 1 ' Warrior GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Endurance) / 2)) * 15 + 150 Case 2 ' Magician GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Endurance) / 2)) * 5 + 65 Case Else ' Anything else - Warrior by default GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Endurance) / 2)) * 15 + 150 End Select Case MP Select Case GetPlayerClass(index) Case 1 ' Warrior GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Intelligence) / 2)) * 5 + 25 Case 2 ' Magician GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Intelligence) / 2)) * 30 + 85 Case Else ' Anything else - Warrior by default GetPlayerMaxVital = ((GetPlayerLevel(index) / 2) + (GetPlayerStat(index, Intelligence) / 2)) * 5 + 25 End Select ```Under it add this:(please note you can add whatever formula to get the max hunger like they do for mp and hp I just used a set amount at the current time) ``` Case Hunger Select Case GetPlayerClass(index) Case 1 ' Warrior GetPlayerMaxVital = 100 Case Else ' Anything else - Warrior by default GetPlayerMaxVital = 100 End Select ```**Client Form Work** Now the way I currently have this base the player's hunger level is displayed as a text on frmMain. I did this for myself as I plan to add moodles for displaying hunger levels when i finish the graphics. But you can use bars such as the hp/mp/xp bars its very simple if you look at how they are handled if you need any help ask me and i will add it. **frmMain** Add a new Label anywhere on frmMain, name it: lblHunger **frmEditor_Item** Find the frame : **fraVitals** Add two new scrollbars and two labels above them in the frame. Name one scrollbar : scrlAddHunger Double click this scrollbar and add this code: ``` ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddHunger.Caption = "+Hunger: " & scrlAddHunger.value Item(EditorIndex).addHunger = scrlAddHunger.value ' Error handler Exit Sub errorhandler: HandleError "scrlAddHunger_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub ```Name the label above this scroll bar: lblAddHunger Set the caption to this: +Hunger: 0 Name the next scroll bar this: scrleffecthunger Double click the scrollbar and add the following code: ``` ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lbleffecthunger.Caption = "-Hunger: " & scrleffecthunger.value Item(EditorIndex).effectHunger = scrleffecthunger.value ' Error handler Exit Sub errorhandler: HandleError "scrleffecthunger_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub ```Name the label above this one : lbleffecthunger Set the caption to this: -Hunger: 0 And that should be it. If I missed anything please let me know and do know you can customize this anyway you want to fit your game =)
  10. Hey I have a thirst and hunger system I will share with you give me a few mins to write a tutorial EDIT: Here is the link: [http://www.eclipseorigins.com/community/index.php?/topic/136474-evb-eo2x-hunger-system/](http://www.eclipseorigins.com/community/index.php?/topic/136474-evb-eo2x-hunger-system/)
  11. Here is a link for a tutorial [http://www.eclipseorigins.com/community/index.php?/topic/118924-playernpc-names-on-mouse-hover/](http://www.eclipseorigins.com/community/index.php?/topic/118924-playernpc-names-on-mouse-hover/)
  12. Justn

    EVB

    Currently using this engine for a project. Great base with features that are easily added onto.
  13. this is what it use to say on the FAQ for EO2.0 Strength: Adds to your max melee hit at [STR / 2] Adds to your base melee damage reduction from a successful block at [STR / 2] Adds to your base parry rate at [STR * 0.25] Endurance: Adds to your max health at [END * 5] Intelligence: Adds to your max mana at [INT * 10] Agility: Adds to your base armour rating at [AGI * 2] Adds to your base dodge rate at [AGI / 83.3] Adds to your base crit rate at [AGI / 52.08] Willpower: Adds to your health regen rate at [(WILL * 0.8) + 6] Adds to your mana regen rate at [(WILL / 4) + 12.5]
  14. Justn

    Presents

    Girl friend got me an Xbox one.. I only got her some gift cards and some dumb candles she wanted :/
  15. Hello guys! This tutorial is one I added on IndieRising so I thought I would share it here as well. It is Dx7 but im sure you guys could use in dx8 by switching a few things. In this tutorial we are adding a brand new crafting system that is sure to be alot better than the previous one. The last edition used recipes to make items which in return caused you to have banks and inventory full of recipes everytime you wanted to make an item. With this system the recipes you have learned are saved and can later be used in a graphical recipe book whenever you like. It was originally made for EVB but should work on a dx7 EO if you change the timegettime's **New Features?** **New Recipe Editor** ![](http://indierising.net/filehost/images/recipeeditorqyq.jpg) With this new editor you can edit every aspect of your recipes as you can see there are some new additions. **Crafting Timer Bar** ![](http://indierising.net/filehost/images/recipetimerggg.jpg) Now you can select how long or how little time it will take to make an item. **More Complex Recipes** Also you can choose how many of one item is needed in a recipe and also how much of the item you are able to make. This can be used to make more in-depth recipes. **Easy to add Professions** In the old system adding new professions was a pain but with this new system changing a constant and adding a few names to list will get you all new job levels that run off of one sub unlike before where you needed to copy the code for each one. **Better Crafting tiles** Crafting tiles are now solid objects and are easy to link to your current professions. **Custom Skill Leveling** Now you can balance things out better by being able to select how much xp a recipe gives in a profession And also all of the features of the last edition! **The Tutorial** First download the rar file below. Then put the server modCrafting file in your server src folder. Then add it to your project within vb6. Next do the same with the client modCrafting and then add the Recipe Editor to your project as well. **[DOWNLOAD CRAFTING FILES](https://www.dropbox.com/s/lb5c5see45oxej7/CraftingMod.rar)** **Server** **modConstants** Add these two lines to there respective spots: ``` Public Const ITEM_TYPE_RECIPE As Byte = 14 `````` Public Const EDITOR_RECIPE As Byte = 9 `````` Public Const TILE_TYPE_CRAFT As Byte = 15 ```Be sure to change the numbers to the next one to match your engine. **modGeneral** Find this: ``` ' Check if the directory is there, if its not make it ```under the rest of the ChkDir's add this: ``` ChkDir App.Path & "\Data\", "recipes" ```Find **Public Sub ClearGameData** At the bottom under the other ones add this: ``` Call SetStatus("Clearing recipes...") Call Clearrecipes ```Find **Private Sub LoadGameData** Under the rest add this line: ``` Call SetStatus("Loading recipes...") Call Loadrecipes ```**modHandleData** In **sub InitMessages** add these to the bottom: ``` HandleDataSub(CRequestEditRecipes) = GetAddress(AddressOf HandleRequestEditRecipes) HandleDataSub(CSaverecipe) = GetAddress(AddressOf HandleSaverecipe) HandleDataSub(CRequestrecipes) = GetAddress(AddressOf HandleRequestrecipes) HandleDataSub(CForgetRecipe) = GetAddress(AddressOf HandleForgetRecipe) HandleDataSub(CCraft) = GetAddress(AddressOf HandleCraft) HandleDataSub(CSwapRecipeSlots) = GetAddress(AddressOf HandleSwapRecipeSlots) HandleDataSub(CRecipes) = GetAddress(AddressOf HandleRecipes) ```Next find these lines in **Sub HandlePlayerMove**: ``` ' Prevent player from moving if they have casted a spell If TempPlayer(index).spellBuffer.Spell > 0 Then If Spell(TempPlayer(index).spellBuffer.Spell).CastTime > 0 Then Call SendPlayerXY(index) Exit Sub End If End If ```Under it add this: ``` ' Prevent player from moving if they are crafting an item If TempPlayer(index).recipeBuffer.Recipe > 0 Then If Recipe(TempPlayer(index).recipeBuffer.Recipe).CraftTime > 0 Then Call SendPlayerXY(index) Exit Sub End If End If ```Next in **Private Sub HandleAttack** under the 'dims' add this: ``` ' can't attack whilst crafting If TempPlayer(index).recipeBuffer.Recipe > 0 Then Exit Sub ```Now in **sub HandleHotbarChange** find this: ``` Case 2 ' spell If Slot > 0 And Slot 0 Then If Len(Trim$(Spell(player(index).Spell(Slot)).Name)) > 0 Then player(index).Hotbar(hotbarNum).Slot = player(index).Spell(Slot) player(index).Hotbar(hotbarNum).sType = sType End If End If End If ```Under it add this: ``` Case 3 ' recipe If Slot > 0 And Slot 0 Then If Len(Trim$(Recipe(player(index).Recipe(Slot)).Name)) > 0 Then player(index).Hotbar(hotbarNum).Slot = player(index).Recipe(Slot) player(index).Hotbar(hotbarNum).sType = sType End If End If End If ```In the next sub **HandleHotbarUse** find this: ``` Case 2 ' spell For i = 1 To MAX_PLAYER_SPELLS If player(index).Spell(i) > 0 Then If player(index).Spell(i) = player(index).Hotbar(Slot).Slot Then BufferSpell index, i Exit Sub End If End If Next ```Under it add this: ``` Case 3 ' recipe For i = 1 To MAX_PLAYER_RECIPES If player(index).Recipe(i) > 0 Then If player(index).Recipe(i) = player(index).Hotbar(Slot).Slot Then BufferRecipe index, i Exit Sub End If End If Next ```**modTypes** In **PlayerRec** at the bottom before end type add this: ``` Recipe(1 To MAX_PLAYER_RECIPES) As Long CraftLv(1 To MAX_SKILL_TYPES) As Byte CraftExp(1 To MAX_SKILL_TYPES) As Long CraftNextLv(1 To MAX_SKILL_TYPES) As Long CraftBonusExp(1 To MAX_SKILL_TYPES) As Long ```In**Public Type TempPlayerRec** at the bottom before end type add this: ``` recipeBuffer As RecipeBufferRec ```**modServerLoops** Find this line in the ServerLoop: ``` ' check if need to turn off stunned ```**ABOVE** it add this: ``` ' check if they've completed casting, and if so set the actual spell going If TempPlayer(i).recipeBuffer.Recipe > 0 Then If timeGetTime > TempPlayer(i).recipeBuffer.Timer + (Recipe(player(i).Recipe(TempPlayer(i).recipeBuffer.Recipe)).CraftTime * 1000) Then ' Perform Recipe checks If Recipe(player(i).Recipe(TempPlayer(i).recipeBuffer.Recipe)).Result = Item(itemnum).AccessReq Then PlayerMsg index, "You do not meet the access requirement to use this item.", BrightRed Exit Sub End If ' Get the recipe num n = Item(itemnum).Data1 If n > 0 Then ' Make sure they are the right class If Recipe(n).ClassReq = GetPlayerClass(index) Or Recipe(n).ClassReq = 0 Then ' ' Make sure they are the right level ' i = Recipe(n).LevelReg ' If i 0 Then Call BltDraggedRecipe(X + picRecipes.Left, Y + picRecipes.top) Else If recipeSlot 0 Then x2 = X + picRecipes.Left - picRecipeDesc.width - 1 y2 = Y + picRecipes.top - picRecipeDesc.height - 1 UpdateRecipeWindow PlayerRecipes(recipeSlot), x2, y2 LastRecipeDesc = PlayerRecipes(recipeSlot) Exit Sub End If End If picRecipeDesc.Visible = False LastRecipeDesc = 0 ' Error handler Exit Sub errorhandler: HandleError "picrecipes_MouseMove", "frmMain", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub picRecipes_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim i As Long Dim recPos As RECT ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If DragRecipe > 0 Then ' drag + drop For i = 1 To MAX_PLAYER_RECIPES With recPos .top = RecipeTop + ((RecipeOffsetY + 32) * ((i - 1) \ RecipeColumns)) .Bottom = .top + PIC_Y .Left = RecipeLeft + ((RecipeOffsetX + 32) * (((i - 1) Mod RecipeColumns))) .Right = .Left + PIC_X End With If X >= recPos.Left And X = recPos.top And Y MAX_ITEMS Then Exit Sub If Len(Trim$(Recipe(scrlRecipe.value).Name)) > 0 Then lblRecipeName.Caption = "Name: " & Trim$(Recipe(scrlRecipe.value).Name) Else lblRecipeName.Caption = "Name: None" End If lblRecipe.Caption = "recipe: " & scrlRecipe.value Item(EditorIndex).Data1 = scrlRecipe.value ' Error handler Exit Sub errorhandler: HandleError "scrlrecipe_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ```On **frmEditor_Item** under the list properties of **cmbType** add : **Recipe** Somewhere on **frmEditor_Item** make a new Frame and name it : **fraRecipe** Inside **fraRecipe** make a label named: **lblRecipeName** Inside **fraRecipe** make a label named: **lblRecipe** Inside **fraRecipe** make a scroll bar named: **scrlRecipe** **frmEditor_Map** On **frmEditor_Map** inside of **fraAttribs** make a new option button named: **optCraft** Double click and add this: ``` Private Sub optCraft_Click() ClearAttributeDialogue picAttributes.Visible = True fraCraft.Visible = True scrlCraft.max = 9 lblCType.Caption = "Type :" & scrlCraft.value End Sub ```On **frmEditor_Map** inside of **picAttributes** make a new frame named: **fraCraft** Make sure to set the **Visible** to **False** Inside **fraCraft** make a label named: **lblCType** Under that label make a scroll bar named: **scrlCraft** Still inside of **fraCraft** make a command button named: **cmdCOk** Paste this at the bottom of **frmEditor_Map** ``` Private Sub scrlCraft_Change() With lblCType Select Case scrlCraft.value Case 0 .Caption = "None" Case 1 .Caption = "Blacksmith" Case 2 .Caption = "Alchemy" Case 3 .Caption = "Cooking" Case 4 .Caption = "Enchant" Case 5 .Caption = "Fletching" Case 6 .Caption = "Goldsmith" Case 7 .Caption = "Tailor" Case 8 .Caption = "Woodwork" End Select End With End Sub Private Sub cmdCOk_Click() skilltype = scrlCraft.value fraCraft.Visible = False picAttributes.Visible = False End Sub ```After all that you should be done with adding this system. Do keep in mind that you will have to do all the gui pics yourself and feel free to change around anything you want to your liking. I included some basic profession levels for you to see you can add remove whatever you need too. LET ME KNOW IF I MISSED ANYTHING.
  16. Justn

    [EO 2.0] Bank Tabs

    There is a small error in the EO 2.0 base with withdrawing currency from a bank. Here is a fix for anyone who already has that fix added or if you just added this tutorial: All Client: Find this sub: ``` Private Sub lblCurrencyOk_Click() ```And replace the whole sub with this: ``` Private Sub lblCurrencyOk_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If IsNumeric(txtCurrency.text) Then If CurrencyMenu = 3 Then If Val(txtCurrency.text) > GetBankItemValue(MyIndex, CurBankTab, tmpCurrencyItem) Then txtCurrency.text = GetBankItemValue(MyIndex, CurBankTab, tmpCurrencyItem) ElseIf Val(txtCurrency.text) > GetPlayerInvItemValue(MyIndex, tmpCurrencyItem) Then txtCurrency.text = GetPlayerInvItemValue(MyIndex, tmpCurrencyItem) End If Select Case CurrencyMenu Case 1 ' drop item SendDropItem tmpCurrencyItem, Val(txtCurrency.text) Case 2 ' deposit item DepositItem tmpCurrencyItem, Val(txtCurrency.text) Case 3 ' withdraw item WithdrawItem tmpCurrencyItem, ValCurrency Case 4 ' offer trade item TradeItem tmpCurrencyItem, Val(txtCurrency.text) End Select Else AddText "Please enter a valid amount.", BrightRed Exit Sub End If picCurrency.Visible = False tmpCurrencyItem = 0 txtCurrency.text = vbNullString CurrencyMenu = 0 ' clear ' Error handler Exit Sub errorhandler: HandleError "lblCurrencyOk_Click", "frmMain", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ```Next find : ``` Public Function GetBankItemValue ``` And replace the whole sub with this: ``` Public Function GetBankItemValue(ByVal Index As Long, ByVal tabnum As Long, ByVal bankslot As Long) As Long ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If Index > MAX_PLAYERS Then Exit Function GetBankItemValue = Bank.BankTab(tabnum).Item(bankslot).value ' Error handler Exit Function errorhandler: HandleError "GetBankItemValue", "modGameLogic", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Function End Function ```Next in BltBank find this: ``` ' If item is a stack - draw the amount you have If GetBankItemValue(CurBankTab, i) > 1 Then Y = dRECT.top + 22 X = dRECT.Left - 4 Amount = CStr(GetBankItemValue(CurBankTab, i)) ``` And change it to this: ``` ' If item is a stack - draw the amount you have If GetBankItemValue(0, CurBankTab, i) > 1 Then Y = dRECT.top + 22 X = dRECT.Left - 4 Amount = CStr(GetBankItemValue(0, CurBankTab, i)) ``` I might have missed something so let me know and ill post the fix. After adding this you will have awesome bank tabs and your currency will withdraw the correct amounts.
  17. ~~lol it is just how it was typed in the item editor.~~ ohh ok i see what you are saying now. Let me look into it cause It was working on the last version I think he just left something out. Also a scroll bar for quest objectives would be a lot better lets see what we can cook up Ill try to do it.
  18. ![](http://i.imgur.com/ZL9ckUX.png) **EVB returns!** **Some of you remember this engine very well and some newer or recently returning members of the community may not. This was the version or Eclipse Origins 2.0 that was developed by Sekaru and features a lot of optimizations, rewrites, and bug fixes from him and some others from the community. Sekaru had prided himself on keeping the engine clean and optimized for the best performance possible. With his blessing and the fact some people like me still use vb6 for hobby game-making he has given us permission to release the engine here again. This engine has everything you need to start making a decent game. This is probably the last version for new features as this is intended to be a stable base. I am sure Sekaru, the community or myself can help with any bugs that may come up. Hopefully this engine will be of use to someone and hopefully will still have a home here =)** **Features:** * Dynamic conversation system with events. * Dynamic quest system with the ability to assign multiple quest objectives. * RMXP-style autotiles. * Centralised game editor. * High stability and streamlined performance. * Open source. * Dx 7 engine * All documents Included for making quest and getting your game online. * Lots of other additions to improve game-play see the change log below. **Screenshots:** _Looking to make deep, branching conversations? EVB provides a fully dynamic conversation system with events._ ![](http://indierising.net/images/evb1.png) _EVB's autotile system allows you to create richer environments._ ![](http://indierising.net/images/evb2.png) _EVB features a rich and dynamic quest system - customisable to fit your needs!_ ![](http://indierising.net/images/evb3.png) **Download** [EVB v2.5.1](http://downloads.sleepystudios.com/evb251.rar) **Full Changelog** **>! ========================== >! EclipseVB v2.5.0 -> v2.5.1 >! ========================== >! -Fixed logout timer on PVP maps >! ========================== >! EclipseVB v2.4.0 -> v2.5.0 >! ========================== >! - Tightened up input and movement. >! - Reduced the default constants. >! - Versions are now handled through constants in modConstants (both sides). >! - Fixed the quest editor not allowing you to change item/conversation indexes & values. >! - Cleaned up and optimised the gameloop slightly. >! - Fixed the fps counter. >! - Level, class and quest requirements can now be set for quests. >! - Increased the length of quest names (uses NAME_LENGTH now). >! - NPCs can now have specific conversation chats set for specific quest stages. >! - Added quest progress messages (i.e. "5/10 worms killed"). >! - Added a 10 second delay to logging out on PVP maps (prevents logging out to survive). >! - Removed the "PK" system. >! - Fixed item and conversation quests. >! - Replaced quest tasks with quest objectives. Objectives can be progressed simultaneously. >! - Dozens of misc. quest system bug fixes and changes. >! - Fixed attacking/talking to NPCs not working sometimes. >! - Walking whilst in a conversation now closes the conversation. >! - The starting map, x and y are now handled in the server's options.ini. >! - The client will now go back to the main menu after losing connection to the server. >! - Fixed instant cast spells not leaving the spell buffer. >! - The "docs" folder is now located in the root folder. >! - Added documentation for making quests. >! - Fixed player stunning. [Credits: Justin] >! ========================== >! EclipseVB v2.3.0 -> v2.4.0 >! ========================== >! - Fixed the attack animation not being sent unless damage is done. [Credits: iRicardo] >! - Fixed the delete button in the shop editor. >! - Added a new centralised editor. Usage: /editgame. >! - Removed the serverside logging system. >! - The server connection timeout is now a constant. >! - Cleaned up the conversation, item, resource and npc editors. >! - Removed the RAW parameter from the FileExist function (serverside). >! - The hotbar now uses 0-9, - and = in place of the function keys. >! - Removed the system tray functionality. >! - The server now comes with a "docs" folder that contains useful tutorials. >! - The runtimes are now included in the client folder. >! - Removed the checks for admin PVPing. >! - Fixed being able to re-cast a spell while already casting it. >! - Fixed consumable items not being removed from the hotbar. >! - Added a blocking algorithm to CanPlayerBlock. [Credits: Yukiyo] >! - Fixed being able to use the hotbar whilst in a bank, trade or shop. >! - Created a constant for the minimum pvp level: MIN_PVP_LEVEL. >! - Fixed the chat not clearing when it loses focus. >! - Fixed not being able to withdraw currencies. >! - Removed the unused "mastery" and "handed" variables in the ItemRec. >! - The MOTD can now be set from the server console. >! - 3 random items (excluding gold) are now dropped on death. >! - NPCs will now react to 0-damage attacks. >! - Fixed targets not clearing on death. [Credits: ValentineBr] >! - Removed the shop buy and sell buttons. >! - Shop buying is now done through double-clicking in the shop window. >! - Shop selling is now done through double-clicking the inventory item. >! - Fixed the damage label not displaying "defence" for armour and shields. >! - Fixed quests not being cleared in the quest log on quest finish. >! - Added support for RMXP-style autotiles. [Credits: Robin] >! - Fixed NPC interactions not being registered sometimes. >! - Added a constant for MAX_BLOOD. >! ========================== >! EclipseVB v2.2.1 -> v2.3.0 >! ========================== >! - Optimisations and code cleanups. >! ========================== >! EclipseVB v2.2.0 -> v2.2.1 >! ========================== >! - Removed Binds and replaced them with Tradable and Untradable items. >! - The three most valuable items in your inventory are now dropped on death. >! - Fixed "You are already on this quest" message >! - Fixed global messages crashing the client. >! - The quest list now automatically updates. >! - Fixed an issue with UpdateMapLogic. >! ========================== >! EclipseVB v2.1.4 -> v2.2.0 >! ========================== >! - Fixed picConv not clearing on logout. >! - Music and sound can now have any (supported) extension. >! - Added a cooldown to item consuming. >! - Added a quest system. Usage: /editquest. >! - Game data is now cleared on login. [Credits: iRicardo] >! - Fixed recently learnt spells not being sent. [Credits: iRicardo] >! - Fixed the slide attribute. [Credits: iRicardo, ValentineBr] >! - Fixed targets not being cleared on logout. [Credits: iRicardo] >! - Fixed defence not being taken into account. [Credits: Ryoku for the formula] >! - Fixed resources not being able to be collected without a weapon. >! - Added a serverside button for clearing all online players' quests (useful for debugging). >! ========================== >! EclipseVB v2.1.3 -> v2.1.4 >! ========================== >! - Fixed an error when loading the game with music off. >! - Fixed string lengths not matching up on convs. >! - Fixed crashing when creating a new character. >! - Removed old form files. >! ========================== >! EclipseVB v2.1.2 -> v2.1.3 >! ========================== >! - Fixed sounds playing even if disabled. >! - Fixed music not turning off when disabling it. >! - Fixed the kick button not doing anything. [Credits: iRicardo] >! ========================== >! EclipseVB v2.1.1 -> v2.1.2 >! ========================== >! - Fixed being able to restart the same conversation. >! - Fixed the "CurChat" scrollbar being able to exceed the ChatCount. >! - Clicking the chatbox will now set focus on the chat bar. >! - Fixed the "delete" button in the conversation editor. >! - Fixed the sound combobox in the conversation editor. >! - Fixed the bad centering on conversation replies. >! - Changed the length of conversation text and replies. >! - Added tab to target. >! ========================== >! EclipseVB v2.1.0 -> v2.1.1 >! ========================== >! - Conversations can now have faces (added in the NPC editor). >! - Fixed NPCs and players being able to move whilst chatting. >! - Fixed being able to move while picCurrency was visible in banks. >! - Added a warping (map, x, y) event to the conversation system. >! - Added a "heal player" event to the conversation system. >! - Added sounds to the conversation system. >! ========================== >! EclipseVB v2.0.2 -> v2.1.0 >! ========================== >! - Fixed not being able to move after relogging in a bank. >! - Changed the timeout for connections to 5 seconds (up from 3). >! - Removed the unused CharSlot parameter in SendUseChar. >! - Changed the longs in Get/SetPlayerPK to bytes. >! - Removed the useless YES and NO boolean constants. >! - Fixed the data/packet flooding timer not resetting. >! - Fixed the attack timer not being checked when using resources. [Credits: ValentineBr] >! - Added the constants for missing editors serverside. >! - Fixed the frame skipping when NPCs walk. >! - Fixed having to click "Okay" to update attributes. >! - Stopped data being sent to maps with 0 players. >! - Various gameloop & networking optimisations. [Including some by iRicardo]. >! - Added a new conversation system! Use /editconv. [Thanks to Matthew and Richy too!] >! - Fixed the stat bonuses carrying over to new items in the item editor. >! ========================== >! EclipseVB v2.0.1 -> v2.0.2 >! ========================== >! - Added a messagebox displaying the packet that caused a packet error. >! - Fixed the PlayerDir packet being sent too often. [Credits: Rob Janes] >! - Optimised the Set/GetPlayerDir functions to use bytes instead of longs. >! - Added multiple drops with percentile chances for NPCs. >! - Fixed being able to type in the chatbox. >! - Replaced the old DirectSound engine with BASS. >! - Removed the "RAW" parameter from the FileExist function. >! - Fixed the memory leak with text rendering. [Credits: Lightning] >! - Added minimise and close buttons to editor forms. >! - Modified the NPC editor to add the new conversation options. >! - Fixed players with names = name_length not being able to login. [Credits: Richy] >! ========================================== >! Eclipse Origins v2.0.0 -> EclipseVB v2.0.1 >! ========================================== >! - Fixed a level up security hole. [Credits: Robin] >! - Fixed spells with indexes over 35\. [Credits: Niall] >! - Fixed player messages. [Credits: Xlithan] >! - Fixed the hotbar. [Credits: Robin] >! - Fixed picSpells not refreshing. [Credits: Helladen] >! - Fixed NPC_HighIndexes. [Credits: Helladen] >! - Fixed an overflow error in the currency menu. [Credits: Helladen] >! - Fixed some trading system crashes. [Credits: Ryoku Hasu] >! - Fixed targetted heal HP/MP and Damage HP Spells. [Credits: Joyce] >! - Fixed animations in the NPC editor not saving. [Credits: Sotvotkong] >! - Fixed GetPlayerClass clientside. [Credits: Riiicardoo] >! - Friendly NPCs must now have 1 point in each stat. [Credits: Scootaloo] >! - Fixed the EXP bar only working for the first player. [Credits: Terabin] >! - Fixed the "Slide" map attribute crashes. [Credits: iHero] >! - Fixed spirit over time spells. [Credits: Soul] >! - Fixed starting spells. [Credits: Noth] >! - Fixed the classes dropdown box in the spell editor. [Credits: Noth] >! - Fixed an error in the OnDeath procedure. [Credits: ValentineBr] >! - Corrected the time between attacks for NPCs. [Credits: ValentineBr] >! - Fixed an error caused by NPCs landing a critical hit. [Credits: ValentineBr] >! - Fixed item animations. [Credits: GuardianBR] >! - Fixed some bank crashes. [Credits: ValentineBr] >! - Fixed a lag spike caused when accepting trades. [Credits: Matthew] >! - Fixed a couple of player movement issues. [Credits: ValentineBr] >! - Fixed vitals not updating after a level up. [Credits: iRicardo] >! - Fixed the non-existant /info command. [Credits: iRicardo] >! - Fixed the shop editor not loading properly. [Credits: iRicardo] >! [Credits to Erwin for adding all the above fixes into the engine] >! - Various code cleanups and optimisations. >! - NPCs and players will now automatically be targetted when attacked. >! - Fixed healing NPCs causing their overall health to increase. >! - You can now walk through players on safe maps. >! - Fixed party EXP sharing and party leaving. [Credits: Terabin] >! - Fixed being able to be invited to a party whilst you're inviting someone else. >! - Converted chat functions to letters (e.g. /b [global message], /e [emote], /w [whisper]). >! - Fixed emote messages. >! - Added a party chat system: usage /p message. >! - Removed the Read/WriteInteger functions. Integers are slow; use longs or bytes. >! - Replaced GetTickCount with the more reliable timeGetTime. >! - The /info command can now only be used if you are on a safe map. >! - Fixed the stats command erroring if the player didn't exist. >! - Added WASD and got rid of the arrow key movement. >! - Added replacement strings in NPC attacksays: and . >! ================================ >! Eclipse Origins v1.5.0 -> v2.0.0 >! ================================ >! - Map items now have despawn timers, spawn timers and name locks. >! - Dropped items now take 30 seconds to appear to people other than their original owners. >! - Npc drops are dropped in their killer's ownership. They take 30 seconds to appear to others. >! - Map items will now disappear after 90 seconds on the ground. >! - Fixed it so tileset scrolling in the map editor works. >! - Added handlers to all NPC editor textboxes. Should stop all editor errors. >! - Added a paperdoll ordering array. >! - PlayerWarp now simply sends a player's co-ordinates if they're not switching maps. >! ================================ >! Eclipse Origins v1.4.0 -> v1.5.0 >! ================================ >! - Cached music & sound lists to improve loading speeds. >! - Music & sound lists are now cached when you visit your first game editor. >! - Music & sound lists are now pulled from the cache to allow for form unloading. >! - Added a personal health bar. >! - Changed action messages to be capped by remaining health. >! - Added 'SendPlayerXYToMap' for seamless warping. >! - Changed admin Shift + Rightclick warping to use the XY position modifier. >! - Fixed currency trading bug. >! - Currency trades now show the total worth of the entire stack. >! - Fixed the INVTOP offset in the IsTradeItem function (to match the existing bltTrade). >! - Currency items only disappear from your inventory when the entire stack is offered in trade. >! - Removed the control array for NPCs in the map properties. >! - Npc selection is now done through a list + combobox. >! - All editors are no longer loaded at startup and are purged from memory when closed. >! - Forgetting spells now uses the custom dialogue box to get confirmation. >! - Removed some CheckGrammar calls. >! - Added a party system. >! - Added party GUI. >! - Added dynamic health & spirit bars to party menu. >! - Max vitals are now affected by your boosted stats. >! - Added health bars to party members. >! - Vitals are now re-calculated and sent when equiping/unequiping equipment. >! ================================ >! Eclipse Origins v1.3.0 -> v1.4.0 >! ================================ >! - Can now dump an image of your entire map through the admin panel. >! - Condensed the list population procedures in to a simple function. >! - Added a 'case else' to the max vital calculations so new classes use it automatically. >! - Fixed starting spells & items. >! - Added proper string clearing to all clearing routines. >! - Resource_Changed array size set properly. >! - Removed access restriction messages. >! - Added error message for people who don't extract Origins properly. >! - Fixed npcs not showing up in map editor. >! - Finished client-side error handler. >! - Fixed NPC drops. >! - Spells can now be forgetten without an erroneous cooldown message. >! - Spells can now be moved without an erroneous cooldown message. >! - Modified item editor to work on netbook resolutions. (600px height) >! - Modified spell editor to work on netbook resolutions. (600px height) >! - Fixed list population clearing. >! - Added dynamic health bars and cooldown bars. >! - Added custom yes & no/ okay dialogue box. >! - Trade requests now use the custom dialogue box. >! - Changed GAME_NAME to loaded from config. >! - Fixed memory leak, sporadic FPS and FPS degradation by removing custom fonts. >! ================================ >! Eclipse Origins v1.3.0 -> v1.3.1 >! ================================ >! - Fixed FPS problems. Personally went from ~180fps average to ~700fps average. >! ================================ >! Eclipse Origins v1.2.0 -> v1.3.0 >! ================================ >! - Standardised the data types. Cut out most, if not all, 16-bit processing. >! - Standardised data type packet sending. >! - Max items, npcs, maps etc. can all now handle anywhere up to 2million. >! - Resources now show as exhausted during map editing to make it easier to map. >! - Removed npc factions - had no use after removing npc vs. npc combat. >! - Added server-side loop time display & lock to help debug problems. >! - Added high indexing on player loops. Fixes y-based rendering fps drop. >! - Added a catch-all cooperative level change fix. No more errors when you lock your PC. >! - Map tilesets are now dynamic. >! - Fixed tileset horizontal scrolling in the map editor. >! - Added currency amount checks to all bank and trade interactions - no more duping. >! - Limited account/character names to 12 characters. >! - Changed the character filter to allow for extended ASCII. >! - Fixed shops. >! - Map editor now closes properly when warping. >! - Disabled door and slide attributes till I actually program them in. >! - Friendly NPCs now talk. >! - Fixed the distinction between player's stats and their RAW stats. >! - Fixed the map report. >! - Added centralised button animation procedures for both menu and ingame. >! - Added animated buttons to menu. >! - Added animated buttons to ingame GUI. >! - Added centralised sound packets and procedures. >! - Added sounds to animations. >! - Added sounds to items. >! - Added sounds to npcs. >! - Added sounds to resources. >! - Added sounds to spells. >! - Added sounds to animated buttons. >! - Centralised the music/sound list population - now carried out at startup. >! - Added file extension check to sound engine. >! - Fixed new character sprite selection problems. >! - Added high indexing on npc loops. Fixes y-based rendering fps drop. >! - Added high indexing on action message loops >! - Fixed class starting items. >! - Added class starting spells. >! ================================ >! Eclipse Origins v1.1.0 -> v1.2.0 >! ================================ >! - Fixed casting bar problems. >! - Fixed problem with shop slots not being recognised. >! - News now loads from .txt file. >! - Removed credits system - replaced with same system as news. >! - Added line breaks through HTML break markup in news & credits. >! - Condensed directory checks. >! - Added conditional error handling. Enable by switching 'Debug = 0' to 'Debug = 1' in config. >! - Blood cache cleared on map change. >! - Paperdoll update sent on map change. >! - New character class combo click event fixed. >! - Currency is now tradable. >! - Item sprites now render correctly in item editor. >! - GDI text rendering fixed. >! - Changed character sprite layout to RMXP standard. >! - Fixed paperdoll issues and switched format to match character sprites. >! - Created & added new GUI. >! - Added face sprites. >! - Re-organised GUI components. >! - Created a new character menu. >! - Removed Npc vs. Npc combat. >! - Made blood dynamic. >! - Added access tags to players. >! - Npc names are now rendered. >! - Fixed it so player sprites no longer flash up as the full sheet for a loop when first loaded. >! - Condensed the potion item types into a single 'Consume'. >! - 'Consume' item type can now give health, mana, experience and cast a spell on use at the same time. >! - Added descriptions to items & spells which can be set in the editor. >! - Re-designed item tooltip. >! - Capped level point count. >! - Capped stat point counts. >! - NPCs are blocked by directional blocks. >! - Character starting item count is now dynamic. >! - Swapped out socket handlers. >! - Added class, access and level requirement checks to all items types. >! - Replaced file listing procedure for map music. >! - DoTs and HoTs are now cleared on death (lol). >! - Spells are now drag and drop. >! - Spell cooldown status now rendered in hotbar. >! - Added target type checks on all target purges. >! - Replaced loading message system. >! - Replaced login timeout system. >! - Swapped around start-up order. >! - Hotbar changed to function keys. >! - Admin panel switched to tilde. >! ================================ >! Eclipse Origins v1.0.3 -> v1.1.0 >! ================================ >! - Fixed problem with class sprite selection. >! - Fixed map editor problem with tile selection. (Thanks to Derrick) >! - Removed isIp procedure. Caused problems when using domains. >! - Fixed problem with ghost items being given to the player. >! - Added new item sprites & spell sprites. >! - Added directional blocking system using bitwise operators. >! - Added graphical arrows which you can click in the map editor to set directional block. >! - Changed Map UDT. All the directional blocking data is stored in a single byte. >! - Added visual bank. >! - Added bank drag & drop system. >! - Added bank slot changing system. >! - Added right-click warping for developers whilst pressing shift. >! - Added heal tile. When stepped on it heals you. >! - Added trap tile. When stepped on it damages you. >! - Added slide tile. When stepped on it carries you in a direction to the next tile. >! - Created some new packet subs to replace packet sending code which was repeated. >! - Added a new procedure. "KillPlayer()" will now take EXP from a player and kill them. >! - Clicking 'trade' and then clicking on a player will invite them to trade. >! - If you try and trade a player who has tried to trade you as well, trade will be opened. >! - Added trade item offering, stored server-side in the TempPlayer. >! - Added graphical GUI for the trade offer so you can see your own and the other player's offer. >! - Map music is now stored as a string. >! - Tried to fix pretty much all bugs reported so far. >! ================================ >! Eclipse Origins v1.0.2 -> v1.0.3 >! ================================ >! - Fixed problem which caused 'aero' theme on Vista & 7 to switch to basic. >! - Not having .bmp files will no longer crash the game. >! - Added Paperdoll. >! - Re-wrote the map UDT to have split X & Y values and multiple tilesets per map. >! - Having split X & Y values unlocks the ability for me to have dynamic tilesets. >! - Added multiple tile selection. >! - Stopped the map editor scrollbar max values from being set to the current map size. >! - Fixed it so the map editor scrollbar max values are set to MAX_BYTE. >! - Removed the timed unloading of tilesets and the load checks in blting subs. >! - Changed it so tilesets are loaded/unloaded accordingly when you change map. >! - Fixed a bug with healing spells. >! - Fixed ordering issues with stats. >! - Added music & sound engine thanks to Harold. >! - Fixed scrollbars to update properly when dragged around (In the map & anim editors) >! - Fixed it so resources only respawn when they've been harvested. >! - Added options menu for players to turn on/off music & sound. >! - Added class starter equipment. >! - Added main menu music. >! - Map music now plays. >! ================================ >! Eclipse Origins v1.0.1 -> v1.0.2 >! ================================ >! - IP and Port now read from .ini >! - Animations now die properly when an NPC is no longer alive. >! - Fixed small RTE when equiping items which raise your stats above 255. >! - Added new spell editor. >! - Restructed spell UDT. >! - Added a scrolling & fading credits screen, taking credits from external file. >! - Added Spell cooldowns + cast times. >! - Added Spell icons. >! - Added visual spell menu in the main game GUI. >! - Reprogrammed spell casting from scratch. >! - Added grey-scale spell icons for visual cooldown notification. >! - Fixed some problems with movement restrictor when casting a spell. >! - Added calculation for AOE courtesy of Rodriguez & Fabio. >! - Added a box to allow users to drop currency items. >! - Added AOE capabilities to damage + heal spell types. >! - Re-did the GUI to rely more heavily on GDI and cut down on memory usage. >! - Added code to force the item description box onscreen. >! - Re-wrote large portion of spell system to use a lot less code. >! - Added access-specific and pk-specific name colours in chat. >! - Re-wrote the map system to have enumerated layers. >! - Re-wrote the shop system. >! - Shops have visual inventory + item descriptions. >! - Shops will buy items for a % of their worth. >! - Various small bug fixes + cleanups. >! ============================== >! Eclipse Origins v1.0.0 -> v1.0.1 >! ============================== >! - Fixed problem with Item Editor damage scrollbar. >! - Added stat requirements to items. >! - Fixed problem with the 'None' item reward for resources. >! - Added blood decals. >! - Changed a few data types to be more logical. >! - Changed a few editor events. >! - Multiple level ups now have proper exp rollover and messages. >! - Proper font support. >! - Proper text centralising. >! - Empty attack say no longer appears. >! - If no damage is done it no longer shows '-0' and instead shows a block message. >! - Fixed small memory leak in DD7. >! - Fixed the colour in the inventory currency. >! - Added animation editor. >! - Added animation instance with locking capabilities. >! - Fixed NPC spawn attribute problem. >! - Added level up button to admin panel. >! - Fixed dodgy line-up in character sprites stolen from 2.7. >! - Added dual-layer animation. >! - Added animation timing + automated client-side animation death. >! - Added time-based movement to compensate for older CPUs. >! - Added animation capabilities to NPCs. >! - Added animation capabilities to items. >! - Added animation capabilities to resources. >! - Added class sprite pool >! ==================== >! Eclipse Origins v1.0.0 >! ==================== >! - Created Eclipse Origins** **Thanks again for everyone who had a part in making this engine and Sekaru for releasing it again.**
  19. > How about I make a tutorial for this tmmrw? Well that would be awesome. Did you have a chance to look at the above code? Was it completely wrong? I tried debugging it by following the moral variable around it sends from client to server correctly but then when sends data back to client it is when its messed up and server variable is "safe" but client reads it as "none".. Thought it was the map morals that were bugged but after doing some research I found the issue to be the logout timer above cause I removed it and morals worked again :/ EDIT: OMG I have the fix thanks to the great Sekaru! thanks for looking into it Abhi2011!
  20. Hello I have have a question hopefully someone can answer. This code is suppose to keep players in-game to prevent a player from logging out in order to survive an attack. It does that but completely breaks the "Safe Zone" map moral.. as in when I set the map editor setting to "safe zone" and click save it disconnects me from the server (no error msg and server continues to run) and from then on that map causes crashes until deleted. I have tried a couple things but it just seems to make the issues worse. Here is the code for the logout timer: Note: Everything is server-side. First find: ``` Public Type TempPlayerRec ```Just before the "End Type" add this: ``` ' logging out logout As Boolean logoutTmr As Long ```Next, find: ``` ' Check for disconnections every half second If Tick > tmr500 Then ```Replace that entire block of code with this{ ``` ' Check for disconnections every half second If Tick > tmr500 Then For i = 1 To MAX_PLAYERS If Player(i).Map > 0 Then If Map(Player(i).Map).Moral = MAP_MORAL_NONE Then If frmServer.Socket(i).State > sckConnected And TempPlayer(i).logout = False Then TempPlayer(i).logout = True TempPlayer(i).logoutTmr = timeGetTime + 10000 End If Else CloseSocket (i) End If End If Next tmr500 = timeGetTime + 500 End If ```Under that, add this block of code: ``` ' 10 second logout For i = 1 To MAX_PLAYERS If Tick > TempPlayer(i).logout Then If TempPlayer(i).logoutTmr Then TempPlayer(i).logout = False TempPlayer(i).logoutTmr = 0 CloseSocket (i) End If End If Next ```Finally, find: ``` Private Sub Socket_Close(index As Integer) ```And replace the entire sub with this: ``` Private Sub Socket_Close(index As Integer) If Map(Player(index).Map).Moral = MAP_MORAL_NONE Then TempPlayer(index).logout = True TempPlayer(index).logoutTmr = timeGetTime + 10000 Else Call CloseSocket(index) End If End Sub ```And that should do it.
  21. I think it is because you put that code in "drawnpc" and not "drawplayer"
  22. Here is the fix for blinking screen on larger maps, if anyone still uses this… In modDirectDraw7 in BltNightTile find this line: ``` ' render Call Engine_BltFast(ConvertMapX(x * PIC_X), ConvertMapY(Y * PIC_Y), DDS_Tileset(.Layer(i).Tileset), rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY) ``` Change to this: ``` ' render Call Engine_BltFast(Camera.Left + ConvertMapX(x * PIC_X), Camera.top + ConvertMapY(Y * PIC_Y), DDS_Tileset(.Layer(i).Tileset), rec, DDBLTFAST_WAIT Or DDBLTFAST_SRCCOLORKEY) ``` Added to OP
  23. Oh ok well it seems you didnt download Service Pack 6 for VB6\. Download it **[here](http://www.microsoft.com/en-us/download/details.aspx?id=5721)**
×
×
  • Create New...