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

RyokuHasu

Members
  • Posts

    1938
  • Joined

  • Last visited

    Never

RyokuHasu's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. Please you guys you don't need to harass him because he isn't as socially capable as some of us. Please try and follow the majority example and attempt to give him a fair opportunity to learn though constructive criticism. Quack3r: please recognize those of us that are giving you constructive criticism, which it a healthy part of any development cycle, against those who just want to attack you, people like Grizzy (no offence to you Grizzy, but you did attack him)
  2. You are hiring story writers right now? 99 out of 100 games have at least basic stories written by the the creator before even thinking about mapping or even making a game. 1 out of 100 games just don't have a story. You might want to at least have a simple outline of the story, a general direction you want the game to go in, a genre for the game, some information about it at all would be nice. You seem like a smart guy, and I gather that you are working under someone else. Please share with your group that to make a game you must have some idea about what you want it to be like exactly before you start actually making it. If you group doesn't understand this concept then its not going to be a very healthy environment for you and you should then pursue something else, possible your own game. Just be sure that somewhere you are using proper project management skills and plan something out and have examples and results you can show before hiring or asking for money. It's what we have to do in the real business world. An example of this is I have to make a sample website with a working app for my work, my boss will then take that sample and use it to ask for several million dollars from his bosses to take it and then make a professional version on a larger scale. The same thing applies here, you have to make and show some work before you gather more people to help you. I hope this brief lesson of project and people management helps you become a better organization and helps you produce a better game.
  3. What I tested was that i set Each AI to seek out food/resources using the 2 different path finding solutions… BFS found the food .. your's didn't.
  4. > something like this? ![;)](http://www.touchofdeathforums.com/community/public/style_emoticons//wink.png) > > -Vid Snip- Not quite… Though the path-finding that I made is a version of BFS, The point is to test the viability of the one in this tut. An i don't have that tool... so i used some other tools i had XD ~~==============================================================================================~~ Due to an overwhelming case of dyslexia… This data is false, sorry. ~~**My Findings:** **Video:** [media]http://www.youtube.com/watch?v=bHjGihRUu5E[/media] **Summary of Test Conditions:** -The map and resource distribution was symmetrical so each AI had the same opportunities and chances as the other. -I will make a video of the findings and post it shortly, It is my recommendation that you do not use this tutorial as it has little more to offer than the default. -I will also post the exact 2 path finding subs used. **Death Beam's logic (slightly modified to fit but still the same)** ``` Public Function APlus(ByVal a As Ants, ByVal StartLoc As Location, ByVal EndLoc As Location) As Boolean Dim Directions() As Direction = {Direction.e, Direction.s, Direction.n, Direction.w} Dim i As Integer Dim DidWalk As Boolean DidWalk = False i = CInt(Math.Floor(Rnd() * 4)) ' Lets move the npc Select Case i Case 0 ' Up If StartLoc.Row < EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.n) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.n) Then Return True End If End If End If ' Down If StartLoc.Row > EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.s) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.s) Then Return True End If End If End If ' Left If StartLoc.Col < EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.w) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.w) Then Return True End If End If End If ' Right If StartLoc.Col > EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.e) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.e) Then Return True End If End If End If Case 1 ' Right If StartLoc.Col > EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.e) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.e) Then Return True End If End If End If ' Left If StartLoc.Col < EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.w) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.w) Then Return True End If End If End If ' Down If StartLoc.Row > EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.s) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.s) Then Return True End If End If End If ' Up If StartLoc.Row < EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.n) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.n) Then Return True End If End If End If Case 2 ' Down If StartLoc.Row > EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.s) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.s) Then Return True End If End If End If ' Up If StartLoc.Row < EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.n) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.n) Then Return True End If End If End If ' Right If StartLoc.Col > EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.e) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.e) Then Return True End If End If End If ' Left If StartLoc.Col < EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.w) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.w) Then Return True End If End If End If Case 3 ' Left If StartLoc.Col < EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.w) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.w) Then Return True End If End If End If ' Right If StartLoc.Col > EndLoc.Col And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.e) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.e) Then Return True End If End If End If ' Up If StartLoc.Row < EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.n) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.n) Then Return True End If End If End If ' Down If StartLoc.Row > EndLoc.Row And Not DidWalk Then Dim CheckDir As Location = a.Destination(StartLoc, Direction.s) If a.Passable(CheckDir) Then If DoMoveDirection(a, StartLoc, Direction.s) Then Return True End If End If End If End Select End Function ``` **The BFS that I made:** ``` Private Function BFS(ByVal a As Ants, ByVal StartLoc As Location, ByVal EndLoc As Location) As Boolean Dim q As Queue(Of Location) = New Queue(Of Location) Dim Marked As List(Of Location) = New List(Of Location) Dim Directions() As Direction = {Direction.e, Direction.s, Direction.n, Direction.w} Dim CurrentTile, LastTile As Location Dim loops As Integer q.Enqueue(EndLoc) Marked.Add(EndLoc) loops = 0 While (q.Count > 0 And loops < 5) If a.TimeRemaining < 10 Then Return False End If CurrentTile = q.Dequeue If CurrentTile.Col = StartLoc.Col And CurrentTile.Row = StartLoc.Row Then Return False End If For Each d As Direction In Directions Dim CheckDir As Location = a.Destination(CurrentTile, d) If Not Marked.Contains(CheckDir) Then If a.Passable(CheckDir) Then Marked.Add(CheckDir) q.Enqueue(CheckDir) End If End If Next LastTile = CurrentTile loops += 1 End While Dim directions2 As List(Of Direction) = a.GetDirections(StartLoc, LastTile) For Each d As Direction In directions2 If DoMoveDirection(a, StartLoc, d) Then Return True End If Next Return False End Function ```~~ ~~**As you can see there is a clear lack or any path-finding in the A+ side.**~~
  5. The results are in! This isn't path finding… it's a random bulkier version of the existing "path finding". I implemented the 2 path finding methods into to other wise identical AIs... And i only implemented it in the bot's ability to find resources. the results were BFS winning by a landslide due to its ability to seek out resources at an exponential rate while the one using this method bumbled around aimlessly. The map and resource distribution was symmetrical so each AI had the same opportunities and chances as the other. I will make a video of the findings and post it shortly, It is my recommendation that you do not use this tutorial as it has little more to offer than the default. I will also post the exact 2 path finding subs used.
  6. Yep, a VB.net project. Though its not hard, I just have to convert every line one by one to fit a completely different setup lol though, I've already taken care of the 1 unit per 1 target, and shortest distance calculations… this will be hard since im doing it for a looping map lol P.S.... this is going up against a highly efficient BFS path finding sub I made, so lets see what wins =D
  7. I just applied this (the logic of it) to a VB.net project I was working on, I'll report back the results once i collect sufficient data to prove this works well with a mass swarm.
  8. Just do what I plan on doing. when they download your game have everything packaged with it so it all gets installed at the same time. The end user should just be able to install and play regardless or any conditions. Many games install their Run Time Files when you install the game, most major games do.
  9. RyokuHasu

    Error Finding

    on the server once you log in you have to right click your name and click "Make Admin". Once you do that to add music Open up the admin panel (insert), go to the map editor, then click on Properties, then select the music you want to play on that, save the map.
  10. If he want to use the eclipse engine then by all means lead him to the vb6 Tutorials. VB6 may not be the most up-to-date language but it's a great gateway into programming since it's simple and easy to use. If you can learn vb6 easily you will get a better grasp on the logic and basic structure that programming has regardless of the language. This topic was made for people wanting to learn VB6: http://www.touchofdeathforums.com/community/index.php?/topic/131824-vb6-tutorial-resources-you-may-need/ I also recommend finding some easy Source tutorials that will help you get used to the specific way this engine is (somewhat poorly) structured. Work from the easy source edit tutorials and move up from there. Don't just copy them down like a halfwit, read and try to understand the code from the tutorials to know how it works. That will help you eventually write your own EO edits if you so choose.
  11. Learning VB6 isn't a stupid idea if you want to do stuff here,the engine here is made with it. I think people are stupid for telling you it's stupid. In fact a few cooperations still need VB6 programmers to maintain old systems written in it. They can't change the language and update it for very specific reasons. Even VBA which is built into Microsoft office for developing Home-Brewed Office add-ons and macros is heavily VB6 based. Just be cause it isn't supported doesn't mean it's completely dead. Anyway, on to coding in general. For the best place to learn one of the mainstream languages i would recommend going to [http://thenewboston.org/](http://thenewboston.org/) . there are simple, easy to follow, tutorials there that will get you to proper coding in no time. Good luck and have fun.
  12. You can not do any kind of active programming outside of a function or sub. The only things that can be outside of a function or sub are the declarations of Global and module variables and constants, Enums, User defined types, and references to DLLs. … I think that covers most of them.
  13. What about searching for if others have already had the same problem? Many people post cookie cutter problems and you can sometimes see 5 topics near each other all with the exact same problem. 1 should be enough if they are the same.
  14. If you are using 2.0… For NPC dialouge use: [http://www.touchofde…11/#entry758476](http://www.touchofdeathforums.com/community/index.php?/topic/120709-csde-to-eo-conversation-system-v11/#entry758476) For Summoning NPCs: [http://www.touchofde…etely-bug-free/](http://www.touchofdeathforums.com/community/index.php?/topic/116108-eo-lightnings-pet-system-completely-bug-free/) and [http://www.touchofde…with-items-v20/](http://www.touchofdeathforums.com/community/index.php?/topic/116510-eo-summoning-diffrent-pets-with-items-v20/) The HOA engine has everything you want already built-in, but is based off of 2.0 and does not have events.
×
×
  • Create New...