![]() |
Instance Manager
1 Attachment(s)
This is something I originally wrote for Kingdoms iPhone, which has since been used and tested on Graal Kingdoms for the Easter event. It allows you to create clones ("instances") of a level (or set of levels).
Example usage: You have a quest which can be completed by groups of three players. Each group of three players needs their own private set of levels so that other players don't interfere with their quest. This script will clone the levels and take care of changing links, as well as deleting the levels after you're done with them. An example of creating an instance: PHP Code:
Creating a new instance type involves adding the following to the main InstanceManager NPC: PHP Code:
PHP Code:
One thing to note is if you are creating GMAPs, it will add them to gmaps= in server options. There is currently no way to remove them except for manually, so it will crowd server options very fast. There is no negative effect on the server that I am aware of—Kingdoms was running fine with at least 300 maps in gmaps=—but you will want to remove them periodically. If Stefan adds a way to remove them dynamically, I will update this script. It should be able to copy any kind of GMAP (including ones generated with the terrain generator or dungeon generator). Setup To get started, you first need to give (npcserver) rights to a location for files to be stored (be sure they're also in folder config). You can change these rights to suit your preferences: Quote:
Quote:
To add more instances, just modify the Easter example which I left commented out. If you have any questions or if I left anything out just post here and I'll be happy to help :). |
That's really nice ^^ Great job.
|
You're so divine.
|
Good work, definitely will be useful considering where Graal is moving.
|
I'll most likely be using this later on. Thanks!
|
I'm not exactly sure who it was, maybe Ziro...but I recall seeing someone use a method similar to this to create a turn-based battle system. Now that I think about it it was DEFINITELY Ziro...in any event do you think it's necessary to use objects with this? Eventually there will be a lot of objects around at one point or another.
Edit: Although they'll be temporary. Edit 2: In any event great work. |
Quote:
|
Quote:
I see the funtionality possible using objects, I think this should have a broader use though considering the use of objects. |
Quote:
|
I'm not sure why when I type in "Instance System" or "Instance Manager" I can never find this thread.. That or even looking in the Code Gallery which this thread is said to be in...
Anyway, the problem is... well I don't know... Cujo started the process, we have a class called "instance" and a class called "intro_instance_map". a Then inside our NPCs we have InstanceManager. Inside Folderconfig level temp/*.graal level temp/*.nw level temp/*.gmap file temp/*.gmap Inside NPC Server: r levels/0intro/* rw levels/temp/*.nw We both aren't sure what is supposed to happen next, but we do know for the most part that it is not working. This is something we would absolutely love to have for the intro, but he and I cannot seem to figure it out. I just checked today, the whole thing is confusing. The only thing it seemed like I had to do that it did not look like he did was add the rights to the NPC server.. Not sure what type of details are needed.. // class "easter2k11_instance_map" public function prepare() { // choose a random map this.mapLevelName = IntroMapControl.getRandomMapName(); temp.resources = { "levels/0intro/" @ realMapLocation }; function onCreated() { // basic setup GameInstance = newInstanceTemplate("TStaticVar"); GameInstance.setTempPath("levels/temp/"); // folder which holds resources GameInstance.setEmergencyExit("shaded_p09.nw", 30, 30); IntroMapInstance = newInstanceTemplate("GameInstance"); IntroMapInstance.setTempPath("levels/intro0/"); IntroMapInstance.join("intro_instance_map"); } He joined the class in basically all the levels.. It doesn't use a gmap.. I don't know ... Can anyone help? |
Quote:
http://uploads.graalcenter.org/uploa...17.09%20AM.png http://uploads.graalcenter.org/uploa...18.06%20AM.png Quote:
Also see how I created new instances. All of that information is in the OP. |
Quote:
|
3 Attachment(s)
I had no reason to use Google since I knew the instance manager is on this forums, as well as I only type in the name "Instance Manager" and "Instance System" since... well that is the name.
Oddly enough now that I've brought it back, or 'bumped' the post, it shows up, previously, I had to search for your name, view your profile, statistics, and any threads by you. I am well aware how to use a search system. But you are correct, compared to Graal Forums, and Wiki, obviously Google is better organized, and better to use for searching which is why I should have used it. I've had a class both in high school, and college teaching about key words, and searching through a search system. Now, since I'm trying to get help, and not argue, lets just say we have tried again, still not working... Do you, or anyone, mind actually trying to help? It would be better off to leave out statements like "Check wiki".. Sure, not many people may need this system, and step-by-step instructions probably aren't asked for due to this fact, however, we find what you've done to be something that could be useful. Whereas we could work around this and do the old style of putting people in a wait room, we would appreciate it if someone could give instructions instead of hoping we can look at the first post and inside the program to understand. (Point is, not many people might need this, and those that do and don't have any programming experience may not understand any of this since the first post doesn't exactly explain much but what to add...) |
I already explained what you need to do in my previous post. Did you ignore the bottom half? This isn't just a copy-and-paste system, but it's not difficult to use if you read the OP.
|
pretty sure the forum search orders by the most recent post by default, and doesn't order by relevancy unless you tell it to. I'm guessing the keyword "manager" has probably been used a lot since the creation of this thread, which is why you couldn't find it until now.
|
Your previous post stated:
Quote:
Perhaps I should go back over the details I said on my first post, where we followed the starting post and tried to get it to work already... Which is had not, which would be why I came on here... for help.. in the first place... I'm not asking to be criticized, if I knew that was going to happen I would have pushed the project aside when I first messaged you. All I'm asking for is the help to completely throw out what we first started, and to try it again with better details than "try to mimic me", which didn't work the first time around. If you don't mind trying to help step by step, that would be amazing.. If not, I can leave the thread alone.. I just thought this would come in handy.. Also, thank you salesman, how might I make it search for relevancy for the next time? it may be pretty helpful trying to search for things I've forgotten to bookmark but remember the names lol.. |
If you want someone to help you, describe the steps you've taken so far and the problem you're having, concisely.
|
I'll erase what Cujo has done and make a video tomorrow morning, thank you.
|
Quote:
|
I tried that once, it wasn't concise enough, and I wasn't sure too much what was done, only what I saw... This will have in short what I've done, as well as a video in case you don't understand what I have done after I've told you again. Should be more concision if you don't understand what I mean, or if I don't understand what you are asking..
Since how some things are put towards how the program is created, which I have no knowledge of and probably don't know what the context involves. Actually I guess there is no conciseness since there are no real definite instructions as to what one needs to do to set this up. It is a lot of back and fourth and not knowing what to do as the first post doesn't give much information as stated once again. I will upload the two videos of two restarts trying to do this and both failing. Then go into as much detail as the first post does. (since there are no actual steps involved in the first post, there is a lot of jumping around in both of my attempts as well) Attempt 1: Attempt 2: One is processing, the other is uploading. Explanation: Will be stated when the videos are uploaded. Basically just followed the semi examples, got confused often, finished it without having any errors in RC, and warped someone to me without any luck. (So you won't have to watch the first two unless you want to see how disorganized trying this is, they are pretty long and shows the tediousness of it.) -EDIT Actually, I'll try a 3rd time and go step by step as to what I'm doing. I'll post the video for that too. Because: 1. Yes it is this difficult. 2. There are no steps for one to follow. 3. Steps should be involved where there are many different interactions with different parts of setting it up. I tried the NPC first and it just failed straight up because there were no classes. That will mean: Cujo attempted twice(or more). I've tried to fix his. I've tried this three times. I'll do this in a few hours, going out to eat and to a store. |
Holy ****, over an hour worth of video footage just for this? x.x
No one will watch even 10 minutes of that. You were asked to briefly explain what you did and why it's not working, not post a short movie about it. |
Seriously, K, keep it short.
|
Okay, so I watched the first five minutes on the first video, and the part between 3:30 and 4:00 tells me that this is -way- above your head (I tend to say that to a lot of people lately).
EDIT: So I watched some more, and really, you need to either take a few steps back or just hire someone that knows the difference between code and flags. |
Yeah, I've stepped back a few times. Even redone it a few times and will try it again.
However, there would be no need in someone knowing the difference between programming and flags if there were instructions given to do this. ;D Thank you for proving my point, I'll give step by step what I'm doing this time. |
1. Checked to see if NPC Server had the rights.
2. Checked to see if the server options had the rights. 3. Open up the zip folder. 4. Recheck the website, found out needed to have NPC. 5. Added the NPC "InstanceManager". 6. Add the exact script from textfile to the instance manager. 7. Received errors: PHP Code:
9. Checked the website / first post to see if there was anything next on the NPC "InstanceManager" left. 10. Became confused with if the level.instance needed to be put into each level since it did not say. However, it was later discussed we did not. 11. Added the following from the first post into the NPC "InstanceManager". PHP Code:
13. Changed it to: PHP Code:
PHP Code:
16. Assume we create our own class for the instance we are trying to create. 17. Created the class that we named in the NPC "InstanceManager": PHP Code:
19. Changed "EasterMapControl" to "IntroMapControl" 20. It looks like we are supposed to change this to as we see fitting, presumably the very top area under prepare. 21. Changed: PHP Code:
PHP Code:
PHP Code:
PHP Code:
24. Checked the website once again. 25. Realized it didn't actually tell me to copy all the stuff above in the setup. 26. Uploaded the last part of the archive, the class "instance". 27. It did not tell us to do anything in this/ for this. No errors on applying. 28. Hope that it works. 29. Tried using another account, had him enter the instance, I used my main account to also enter the instance, only the level, not warping to the player. 30. End Results = Attempt 3 FAILED Video is uploading video. With this video, and my exact steps in the processes, I don't think I can be any more definitive. If you don't mind, please giving me created steps that I should be following? Perhaps make it more player-friendly. Once that is done, I doubt anyone else will avoid this, or try to get help only to be criticized about trying to get it. I honestly don't mind speaking out for other people, because I could care less what others think. As long as I'm not the only one being helped. (In this case I probably am since I don't see too many people in mind that may be interested right now. We probably wouldn't have been trying to use it if I didn't mention it. The old way used 4 levels per scene and a waiting room.) Ziro, you should not imply that the people who have worked on this do not know the difference between flags and programming. As I don't know what CujoDaMan does or does not know. And I do know I have recently gotten into them a few months ago. Putting others down for trying to learn isn't all that logical either. Unless you don't care about CujoDaMans two attempts in this and only feel like putting myself down. In the future though, I feel you should try positive reinforcement, unless you would like others to be pushed out of the developer section of Graal. I'm really not sure why many Graal players have such a poor attitude towards others.. It is kind of sad.. Also, sorry Crow, this was not something I could keep short.. Giving a lot of information that in itself leads up to a lot of words per step creates a pretty long list. Especially something as technical as this. I did however try to be brief. I think the video is much shorter and quicker leading up to the failing also. I did try. (However, many people on the forums do not like spacing and the return key, so I suppose I could have kept each step close together in fewer lines so it would look worse and less legible, for the benefit of others.) If almost anyone was asking for help, and were shot down on the first post of asking, and they were told that they never read the first post giving hardly any information on the subject... (which you need to reread over and over) Well, I'm sure most people would probably stop there. I don't. So yes, my second try in asking for help was a little more forward. At that point if he said no, I could care less, at least I had still tried. If we must, we will go back to the old way... I however feel that he posted this in order to help many others, not to put them down for not being able to figure it out. Sorry if my reaction towards everyone's comments were unexpected. 8 minutes remaining. |
Quote:
|
Quote:
Callimucs say3 tells how to use it: And his was already pretty simple. http://forums.graalonline.com/forums...hp?t=134266172 cbk's tailor: Something such as this he said you press T. If you are adding programs to your server, one would expect you to know a tailor is a weapon. Again, simple. http://forums.graalonline.com/forums...ad.php?t=73742 However, like Callimucs say3, if you want to try to make it easier, even as something as simple as a weapon, and actually want people to use it. Sure, instructions could help. Although, I must say, if you can reprogram everything in this 'basic script' I'll give a thumbs up to that. I however, don't understand a thing about it. So I can't expect someone who does not program to understand it either. (But of course, I know almost all Graalians know everything, I'm the odd one out.) Anyway, thank you, jazz, for you coming in to help along with the others. I don't know, I suppose I was wrong to think asking for help would be so negatively viewed, especially after: Quote:
Anyway, the video should be finished in a minute or two, assuming I won't get a viable response in a day, and there 'might' be instructions eventually, have them able for CujoDaMan to follow at least. As I will not have rights to the server any longer. Going to try to get the weapon system more completed, give comments as to how to use it, and work on a quest. Thank you everyone, your responses were appreciated. And seriously, cbk, should you decide to give some detailed help, Shaded Legends would greatly appreciate it. I won't be able to continue on this time consuming project of cat and mouse trying to get help, nor do I have the time for it since I have a day of gold left. If I see an answer, I will let Cujo know. |
It's not like these are plugins or mods. If you want to use snippets/samples from the code gallery then you at least need to know some basic gscript. You're handling scripts, therefor it's implied you know the scripting language you're handling.
Some things are too complex to be able to simplify into a single function or two. |
Quote:
I believe I do know a little bit of GS2, but I'd never say I am 'good' since there is always something I can learn. However I also feel that many people know more than I do about certain things, whereas for some I may know more in another subject. For instance, I don't know light effects. Never used them, never needed them, and I don't have the care to try. Some people may think I'm stupid because I don't know them, and that is good for them, their opinion. Even if it could take me 5-10 minutes to learn. I chose to learn the hammer script, so I know a few things others may not, good for me, I can make tiles move and do nifty effects, who cares right? The problem for me is, people on the forums are always quick to call others out. There are those who do want to help others though, and I am sorry if I group them with others. Dusty, you are always helpful, Thor is usually always helpful. cbk is from the looks of it, usually helpful. Maybe he has a problem with me, I don't know, I honestly wouldn't mind. It is rare to see those actually helping without putting them down. Heck, I've even given Skyzer a positive repute once or twice. My mind was blown. Although I've only given him negative once or twice too. I myself like teaching, and I don't mind answering questions when I have time. I'm going to try to stop this rant. Point is, I was asking for help, trying to explain what was wrong, and giving suggestions that could make the thread a little more user-friendly for everyone else. Not everyone does know GS2 however, and steps should also be given to them. (Unless this was only directed to the horribly small audience who are very good at it, then perhaps it should be stated it isn't for anyone without years of experience.) |
Disclaimer: I read about 5% of your posts for obvious reasons (I don't have all day).
Quote:
This script clearly goes over your head, which I've told you before. You would be better off finding a scripter to help you out than whining about it on the forums. Some scripts aren't going to be as simple as others. |
Okay, well at least I tried.
I know better to ask you again. Not once on this thread have you given me any bit of helpful info except to reread the first post. Which I've done probably three times per try, four tries myself, and two times trying to fix what was already started. We will head away from this project unless Cujo feels he can get more out of you, or he might actually get an actual helpful post. And that is fine, I did realize this thread was a year old and it may not be convenient for you, I don't recall who sent me the link to it. |
Quote:
|
Quote:
Starting off with the first person I was looking for help from: Quote:
2. Telling me to reread the OB, which who knows, one might have skipped it? Quote:
4. Telling me once again to reread the OP. Note: He says that this is not difficult, as long as I read the OP. Quote:
Quote:
There was absolutely no help given in my attempt. (It should be advised to take note I did not quote any other posts since I knew there was not going to be anyone but him possibly able to help.) I think after many tries, videos, steps that I've taken, it would be enough to either see a flaw, or have a reason to improve the 'said instructions that were given' that had no particular order or help in using. But you could be right, I somehow doubt anyone on my server could put this together. I might have to find someone only for this. Why am I obnoxious in asking for help? I believe on my first attempt, I've given many things I thought 'could' be the problem, and I asked nicely for help. Since my first post I was handled with poor attitude. Quote:
However I stated helping and giving more instructions might help others use this as well. Quote:
So I ask you, did I not have the right to be irritated? I'd rather this be answered by a just person. (Note: I did not add other quotes into my reply since there was only one specific person I thought might be willing and be able to help. So if you were also rude to me, and don't find it achieving that your post was not quoted, sorry.) But sincerely, I do appreciate that replies were even given and within a day, that was at least one good thing from these attempts in looking for help. No more justification from myself is necessary, and I will not be answering any impolite posts. If there is a desire to actually try to help, let Cujo or I know. Thank you. |
Quote:
you don't have a right to take that feeling out on other people, especially when looking for help |
Quote:
|
It doesn't matter how amazing and helpful a person is, if they try to sit down and teach me Calculus and I don't have a fundamental understanding of math, they're not going to get anywhere and chances are we're both going to end up getting pretty frustrated with each other for no actual reason [and you're gonna have a bad time].
|
Quote:
|
Quote:
However, claiming that I have a lot of trouble with search engines without analyzing the situation, and taking into account I only used the Graal Forums search engine, and it did not show, nor show in the code gallery, I do find rude, unnecessary. The fact that I mentioned it also, was due to my ignorance and and lack of awareness that this was a year old, and it seems like almost everything is now hidden. (I only see about 20 things in the code gallery, pretty sure there use to be more.) Quote:
Quote:
I would however agree with this, in the fact that I was not asking for him to teach me, but to give step by step details in how it would be implemented. So if he did try to explain what it was doing, which I don't care about, I'd probably be terribly confused. In my own opinion and ignorance, it seems to me I would have to add an NPC, add two classes, make sure the server options are correct as well as the NPC Servers rights. Then add in the appropriate parts. That is 7 steps. Maybe I'm totally wrong, I don't know. Since you did use person, I can't judge and assume that it was implemented to be Cujo and I, so I can only say both Cujo and I do for the most part know, or know some of the basic fundamentals of GS2. As well as math.. If it helps, I've taken fundamentals of programming as well as C programming in college. Visual Basics in high school. I've been doing GS1 since 2003 and started GS2 in I guess 2010. My math is very rusty but I've taken up to trigonometry... twice sadly. So giving steps to follow, usually called a tutorial, should help in implementing such a system as this, since I believe the objective of the code gallery is to use them if it would help progress the server. Learning is only additional, not an necessity. Meaning some things should be learned, but not necessary. I however will later be contributing things that I do in the future, like my waterfall, and my beach, countertops, and other things, as well as providing a tutorial in how I did them so others can learn. This type of additional work one cannot expect from many people, and I understand that. I probably couldn't learn what it is doing, or how it is doing it. I could however learn how to use it. With the given help. I understand it does not seem like you are taking sides, but you must know that this system does seem, to me at least, that a background is not needed to implement this into a server. I believe the lack of willpower, time, and people wanting it done is the only thing stopping the creator. However, he could have said no, and I would have left a while ago. My feelings probably less opinionated towards them however. Code Gallery: For showing complete scripts, if possible with comments. Maybe they aren't for using, but only stardom, who knows. I believe some people post to help out. However, it does say nothing about them having to explain it, and that is up to the thread creator, which is why I would have accepted a no to helping. Instead of egging me on, and once again instead on hinting that I am inadequate. (Perhaps it is his own personality, and it wasn't personal attacks as someone stated above, then this is only a matter of my opinion.) But telling me to do it over a few times, asking me to be concise in what I was doing which I did, and then flat out saying I'm doing it wrong and can't do it... is a waste of both our time. He did however hit he might help towards the middle, in which I was grateful for, I'll give him props for that... The video thing was on my own accord, and I'm not saying that was a waste of time, I did it because I felt it could better help. He did say it was unnecessary which is fine. Conclusion: From what I see, obviously if many people feel that he has tried to explain it, and my persuasion and justifications aren't enlightening anyone. Perhaps everyone is right. Maybe this program should not be given to the average Graal community, and it should perhaps be said so, as I once mentioned before. Explanation of a few things that may be regarded in future messages. 1. I did pass in C Programming, but dropped out of computer science to go into Art. 2. Both Trig and C were four years ago. 3. If I can do a 10 page essay in three hours, this isn't much of a waste of time for me. I also understand a lot of people are on Graal either to have fun, or even, possibly a lack of education and cannot comprehend long essay type writings, which I do have trouble in shortening due to the fact I feel things should be justified; therefore do not indulge in reading. I don't mind putting what I feel is most important in bold. I know I should improve on shortening my replies, and it has been hard for me. (I've probably edited this post about 10 times due to it not being to my standards) |
Quote:
|
David_K, no offence but people do not want to read your life story. It can actually be more effective to be short and straight to the point than to write a short story every paragraph.
|
| All times are GMT +2. The time now is 01:19 PM. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.