Jump to content

Rika

Members
  • Posts

    77
  • Joined

  • Last visited

  • Days Won

    9

Posts posted by Rika

  1. From what I know from ROCT, the issue is the game crashing if you complete it with 2 players.

    Alrighty, I know why it's crashing now. Quest has some measures that won't allow it to give out items if certain things happen. Completing the quest will less than 3 people is one of them. This is because if 2 people tried to do the quest I thought 1 of 2 things would occur. They run out of time or they both die. I don't like cheating at that is why it's in place, however this quest was designed with "default" servers in mind. No tweaked items, no new items that could potentianally let you actually complete the quest with 2 people. Lee said he will do something about it this weekend, however I will not (since the quest to me is still functioning how it's supposed to).

    3+ players are no problem. :)

    Edit: Still don't know why the forest offensive console is bugging.

    When someone starts forest offensive on the counter it should have "Ver1.21" somewhere. If it has something else maybe it's the wrong version.

    • Like 1
  2. 
    1007:   call 1001
            call 1002
            call 1003
            ret 
    1005:   leti R186, 00000001
            leti R187, 00000065
            sync 
            gettime R189
            get_random R186, R188
            sub R189, R188
            let R188, R189
            sub R187, R186
            div R189, R187
            mul R189, R187
            sub R188, R189
            add R188, R186
            jmpi_>= R188, 00000048, 1007
            jmp 1006
            ret 
    1006:   window_msg 'Received <color 3>Photon drop<color 0>!'
            winend 
            leti R200, 00000003
            leti R201, 00000010
            leti R202, 00000000
            leti R203, 00000000
            item_create2 R200, R204
            ret 
    1001:   leti R90, 00000001
            leti R91, 00000065
            sync 
            gettime R93
            get_random R90, R92
            sub R93, R92
            let R92, R93
            sub R91, R90
            div R93, R91
            mul R93, R91
            sub R92, R93
            sub R92, R90
            jmpi_>= R92, 00000055, 1100
            jmpi_>= R92, 0000004B, 1101
            jmpi_>= R92, 00000041, 1102
            jmpi_>= R92, 00000037, 1103
            jmpi_>= R92, 0000002D, 1104
            jmpi_>= R92, 00000023, 1105
            jmpi_>= R92, 00000019, 1106
            jmpi_>= R92, 0000000F, 1107
            jmp 1108
            ret 
    1002:   leti R95, 00000001
            leti R96, 00000065
            sync 
            gettime R98
            get_random R95, R97
            sub R98, R97
            let R97, R98
            sub R96, R95
            div R98, R96
            mul R98, R96
            sub R97, R98
            add R97, R95
            jmpi_= R97, 00000064, 1316
            jmpi_= R97, 00000063, 1316
            jmpi_= R97, 00000061, 1316
            jmpi_> R97, 0000005A, 1315
            jmpi_> R97, 00000055, 1314
            jmpi_> R97, 00000050, 1313
            jmpi_> R97, 0000004B, 1312
            jmpi_> R97, 00000046, 1311
            jmpi_> R97, 00000041, 1310
            jmpi_> R97, 0000003C, 1309
            jmpi_> R97, 00000037, 1308
            jmpi_> R97, 00000032, 1307
            jmpi_> R97, 0000002D, 1306
            jmpi_> R97, 00000028, 1305
            jmpi_> R97, 00000023, 1304
            jmpi_> R97, 0000001E, 1303
            jmpi_> R97, 00000014, 1302
            jmpi_> R97, 0000000A, 1301
            jmp 1300
            ret 
    1003:   sync 
            call 2100
            leti R204, 00000000
            leti R205, 00000000
            item_create2 R200, R208
            switch_call R94, 9:1400:1401:1402:1403:1404:1405:1406:1407:1408
            ret 
    2100:   leti R150, 00000001
            leti R151, 00000065
            sync 
            gettime R152
            get_random R150, R185
            sub R152, R185
            let R185, R152
            sub R151, R150
            div R152, R151
            mul R152, R151
            sub R185, R152
            sub R185, R150
            jmpi_>= R185, 00000054, 2116
            jmpi_>= R185, 00000044, 2115
            jmpi_>= R185, 00000034, 2114
            jmpi_>= R185, 00000024, 2113
            jmpi_>= R185, 00000014, 2112
            jmp 2111
            ret 
    2111:   leti R206, 00000000
            ret 
    2112:   leti R206, 00000001
            ret 
    2113:   leti R206, 00000002
            ret 
    2114:   leti R206, 00000003
            ret 
    2115:   leti R206, 00000004
            ret 
    2116:   leti R206, 00000005
            ret 
    1400:   window_msg 'Received <color 4>YASMINKOV 9000M<color 0>!'
            winend 
            ret 
    1401:   window_msg 'Received <color 4>SAMBA MARACAS<color 0>!'
            winend 
            ret 
    1402:   window_msg 'Recevied <color 4>EARTH WAND: BROWNIE<color 0>!'
            winend 
            ret 
    1403:   window_msg 'Received <color 4>VALKYRIE<color 0>!'
            winend 
            ret 
    1404:   window_msg 'Received <color 4>YASHA<color 0>!'
            winend 
            ret 
    1405:   window_msg 'Received <color 4>RED SWORD<color 0>!'
            winend 
            ret 
    1406:   window_msg 'Received <color4>EVIL CURST<color 0>!'
            winend 
            ret 
    1407:   window_msg 'Received <color 4>NUG2000-BAZOOKA<color0>!'
            winend 
            ret 
    1408:   window_msg 'Received <color 4>RAIKIRI<color 0>!'
            winend 
            ret 
    1100:   leti R200, 00000000
            leti R201, 0000006C
            leti R202, 00000000
            leti R203, 00000000
            leti R94, 00000000
            ret 
    1101:   leti R200, 00000000
            leti R201, 00000048
            leti R202, 00000000
            leti R203, 00000000
            leti R94, 00000001
            ret 
    1102:   leti R200, 00000000
            leti R201, 0000000C
            leti R202, 00000007
            leti R203, 00000000
            leti R94, 00000002
            ret 
    1103:   leti R200, 00000000
            leti R201, 0000000B
            leti R202, 00000007
            leti R203, 00000000
            leti R94, 00000003
            ret 
    1104:   leti R200, 00000000
            leti R201, 0000008A
            leti R202, 00000001
            leti R203, 00000000
            leti R94, 00000004
            ret 
    1105:   leti R200, 00000000
            leti R201, 00000034
            leti R202, 00000000
            leti R203, 00000000
            leti R94, 00000005
            ret 
    1106:   leti R200, 00000000
            leti R201, 00000051
            leti R202, 00000000
            leti R203, 00000000
            leti R94, 00000006
            ret 
    1107:   leti R200, 00000000
            leti R201, 0000008D
            leti R202, 00000000
            leti R203, 00000000
            leti R94, 00000007
            ret 
    1108:   leti R200, 00000000
            leti R201, 00000010
            leti R202, 00000007
            leti R203, 00000000
            leti R94, 00000008
            ret 
    1300:   leti R207, 00000005
            ret 
    1301:   leti R207, 0000000A
            ret 
    1302:   leti R207, 0000000F
            ret 
    1303:   leti R207, 00000014
            ret 
    1304:   leti R207, 00000019
            ret 
    1305:   leti R207, 0000001E
            ret 
    1306:   leti R207, 00000023
            ret 
    1307:   leti R207, 00000028
            ret 
    1308:   leti R207, 0000002D
            ret 
    1309:   leti R207, 00000032
            ret 
    1310:   leti R207, 00000037
            ret 
    1311:   leti R207, 0000003C
            ret 
    1312:   leti R207, 00000041
            ret 
    1313:   leti R207, 00000046
            ret 
    1314:   leti R207, 0000004B
            ret 
    1315:   leti R207, 00000050
            ret 
    1316:   leti R207, 00000055
            ret 
    

    Start at function 1005. This determines if you get a pd or "something else". It rolls 1-100. If it rolls 72 or higher you get something else, else a pd. Now let's say it rolled 72 or greater we go to function 1007. Here we called several functions 1001,1002,1003. So let's start with 1001. So on this function we're gonna do another 1-100. This will determine what kind of something else we're gonna get based on what is rolled.

    r200, r201, r202, r203 are now reserved for the item type.

    Now let's do function 1002. This will do another 1-100. This will be the value of the % value. Anyway the % value will go into r207. Now to 1003. Function 1003 pretty much immediately calls 2100, so let's go there. Now we're gonna roll for the % type.

    1-100 again. 84 or higher? You get hit. Else 64 or higher? Dark. Else 52 or higher? Machine. Else 36 or higher? A.Beast. Else 20 or higher? Native. Else nothing. You have a 1/5 chance of getting no %. Anyway the % type goes in r206.

    r204 and r205 are set to 0. Now our item is created.

    aa = r203

    bb = r204

    cc = r205

    gg = r206

    hh = r207

    aabbccdd,eeffgghh,

    (if you were were making a item with your own server that's how it would be structured)

    Anyway if you are not getting any percents like you say either someone messed with it or your pretty unlucky.

    About why I selected which reward to what they are is, I picked 3 rares for each class.

    Each rare would be one of the following:

    -Unobtainible

    -Not super rare, but could be useful with high percents

    -super rare drop

    (This of course may not apply to ultima).

    Each class has one of those rares. Larva is free to pick whatever rares he wants, just that was my mind set when selecting them. The percents you could get could go all the way to 85%. Now I'm not saying my code is perfect, it is far from that, but it should work. I've played the quest plenty of times myself and got %s. I think this quest is VERY VERY generous. Also remember, not only you get a item, everyone else does too. Statistically on average at least 1 person should get something other than a pd.

    Also I looked at forest offensive and see nothing wrong with it. D:

  3. well aware why. If I have to look at your retarded quests my eyes are probably going to burn.

    Have fun!!!! I'm surprised you never looked at any of my quests.

    I would fix/test them myself, but I can't motivate myself to. If I remember I almost finished a quest in September, all I needed to do was test it and fix a few more bugs and couldn't motivate myself to do it. I'm so lazy at the moment. XD

  4. For forest offensive:

    Either sounds like the most recent version of the quest isn't up, or whoever crashed cheated. Pretty sure it was working correctly the last time I touched it.

    For mine offensive:

    With the boxes your chances of getting something unless it was changed is around 10% for most items. You have a much higher chance of getting something in ROCT because that quest is far harder. Could have coded this a lot better since I have a better understanding of coding now, but it was working fine. Although, I did make one change that may or may not have broke the drops. I think all the items have a FF added onto them which if I rememeber was for another server's code to make the item's % random. That may have broke the drops, I'm not sure. Now that I think about it, server coding could have made making this quest a lot easier. xD

    In my opinion the boxes are better to have than a console that gives them for several reasons, not saying why though.

  5. I suggest you just get the floors out of a phantasmal world quest if your making a quest with those areas if you really need them. :)

    You can take the "map_seabed02_01_00e.dat" or "map_seabed02_01_00o.dat" or "map_seabed02_01_00.evt" files for 1 of the lower seabed maps (there are others). You can't go to tower in a normal game if I remember so the files for that aren't present in the client.

    • Like 1
  6. http://www.mediafire.com/?2211r86f5fvjrow

    I'm just putting these here if that's okay for archival purposes since I had no where else to post these. Enjoy whoever downloads them.

    2 unfinished quests. Crater Offensive and a MSB redo. MSB was almost done script wise I think if I remember (this is a complete redo of the quest from scratch), but needs most of the monsters/objects re-added. Temple is now a bonus part and is only playable after you finish the quest without dying if I remember. Seaside is playable though so far. Crater Offensive was no near done. Does have one playable area though. I don't know if I'll ever finish them. Anyone is free to finish them if they want.

    Added the 3 Max Attack S event quests (I still need to get to making a non-event version of these sometime). I however purposely broke them (however they are extremely easy to fix any quest editor can). They will not load up untouched. This is so most people can't just grab em and put them on their server. This is just for informational purposes really (hence why I broke it) so if anyone was interested of making their own similar event. Also, if you do get them to work, keep in mind they change global flags and shouldn't use them if you don't know what your doing, unless you want some of your character data broken.

    Added 9 "fixed" quests that I worked on at some point(or made them go from GC format to BB format). Most are custom quests.

    Quest 22 is a 1 player story quest. It worked fine, but Sega took out a way to get a item from it, I fixed that. All the others were just taken from GC format to BB. I'd only use some of these to learn really or use them on personal servers since these don't belong to me. If someone else fixed them, I'm sorry, I thought everything in my fixed folder I worked on. xD

    This was posted on Eden, but I thought Id leave this here now.

    • Like 2
  7. I think rika left the project, he started school and other life things.

    I never really left it (the the quest the system is inside I didn't plan on finishing), and I don't start school till September Larva. =p

    I did start some code of it sometime ago in my Crater Offensive quest (which is publically availible if you look for it). Pretty much the system for detecting which item is what and how much to sell it for it there. Only each item has to be individually added. I would have added each item in a list created to the quest if someone made one (I don't want to decide how much something is worth, nor do I want to be bothered to figure it out, this is a system you guys want not me).

  8. Ah ok, thanks Rika, now i know about the ID # that's one of my questions, but when talking about the function when editing npc? can it be any number too?, or does it has to be an exact number? because i saw you used 300, and about that does function is related to label??

    A label is just the start of a function. It can be just about any number like I said in the previous post. Just make sure the npc and the script match or it obviously won't work. I showed you a example in my previous post as well. xD

  9. Can be any number (i would use between 100 and 255). Number I used was a example. Just make sure they match the script! -hopes i remembered it right, haven't looked at qedit for awhile- This is from memory. XD

    Character ID has to match the dword for the message op code in the script (character id on the character is in decimal, in the op code in the script is default hex (you can switch it to decimal in the script window). Function on the character has to match the script function, but can be any number (0-65535 (don't use 0 since that's always the start function)). Example:

    -on the character-

    Character id: 105

    Function: 2000

    -on script-

    2000: message, 00000069, Hi, I'm a window bubble.

    mesend

    ret

    (105 in hex is 69)

  10. That's what you did with Max Attack S episode 4 , so users could get prices with the scores they get through the quest right?

    With max attack S episodes 1,2, and 4 yup. The script in the code box is from the actual quests.

    Global flag 8 was used to store a currency that you could buy things with. Global flag 3 was used to track how many kills you got total.

    The code not in the box is a example, but should work if you threw it into a quest. The example only uses 1 global flag and doesn't multiply it based on difficulty though.

  11. I'm bored, so I randomly decided to type this.

    Keep in mind you'll need to know qedit a little to understand this.

    This is to create a thread that updates the amount of kills you get in real time and save them.

    Firstly, you need to decide of a Global flag to use. Now, pretty much all of them are in use, but you can always take the quests that use them away temporarily or remove the global flag from them. Refer to this topic to see which flags do what. http://www.edenserv.net/forum/viewtopic.php?f=21&t=1801

    Let's use global flag 8 for example.

    Now let's make a thread. The threaded function for this example will be 1325.

    So, on every floor we will do thread_stg 1324 when you arrive.

    Now for the actual function.

    (Keep in mind anything with a // is a comment).

    1324: jmpi_= r8, 00000001, 1 //if r8 is set the function will jmp to function 1 and basically "turn off".

    1325: sync // 1 frame

    addi, r1, 00000001 // this is for a "update" throttle.

    jmpi_< r1, 00000258, 1325 //until r1 is not 0x258 or less, it's gonna keep going back to the start of the thread. 0x258 is 600 in decimal. This is to calculate 600 frames have passed. 600 frames if I remember is 20 seconds.

    clear r1 Reset's r1, so it starts at 0 for the next pass.

    chk_ene_num r2 //This calculates how many monster's have been killed and stores it in r2.

    let r3, r2 //this stores the value of r2 into r3. I used r3 to scrolls text to display kills for the quest in a different function using <r3>. This function isn't necessary though.

    jmp_!= r4, r2, 1326 //compares r4 and r2. If they aren't equal, go to 1326. Since r4 starts at 0, just getting a kill will make them unequal. If they are still equal it will skip this.

    jmp 1324 //goes back to the beginning. Only happens if a kill hasn't happened in the current pass.

    1326: read_global_flag 00000008, r5 //read's the value of global flag 8 and stores it in r5. (flag 8 is to be our kill count)

    let r6, r2 //put's the amount of monster's we killed since the last pass into r6.

    sub r2, r4 //subtracts r4 from r2

    let r4, r6 //put's r6 into r4

    let r7, r2 //put's r2 into r7

    add r5, r7 //put's r7 into r5

    write_global_flag 00000008, r5 //stores the new amount of kills into flag 8

    jmp 1324 //goes back to function 1324.

    Let's say you had 2 kill's in the last pass and got 3 more this pass (thus you have 5 this pass).

    Basically, here's what the code does. It counts 600 frames. After it checks how many enemies were killed (which would be 5). It then copies that number to another register for use to display on a scroll screen (which I didn't show the code for). Now it compares the last pass with this pass. 2 different then 5? Yes? Okay let's go to 1326. Now let's read global 8 and put it in r5. Now we put the amount of kills we have on this pass (5) into r6. Now we subtract r4 from r2 (5-2) which is

    3 (r2 = 3). Now we put r6 into r4 (both r6 and r4 are now 5). We put r2 (3) and put it in r7 (now 3). Now we add r7 to r5 (3+2 = 5). We now write 5 to global 8. Then we start over.

    Sorry if I made any typos with the registers. But with this code, every 20 seconds, the quest will compare the amount of kills you last had, with the ones you have now, and add them to your global flag. Setting r8 will shut the thread off. I'd do that after the quest is pretty much over.

    Here's how I did this with Max Attack S. I'm not commenting it and it's slightly different. It multiplies based on difficulty (r83 is the difficulty). Function 95 is the start of the thread. Each map would thread_stg 95. Also, global flag 8 was the currency (which could be spent). Flag 3 was total kills by you (which couldn't be spent). Flag 3 was what was displayed on the event site (Tofu did all that).

    91:     muli R11, 00000001
           ret 
    92:     muli R11, 00000002
           ret 
    93:     muli R11, 00000006
           ret 
    94:     muli R11, 00000014
           ret 
    95:     sync 
           addi R14, 00000001
           jmpi_< R14, 00000258, 95
           clear R14
           chk_ene_num R19
           let R234, R19
           jmp_!= R15, R19, 96
           jmp 95
    96:     read_global_flag 00000008, R12
           read_global_flag 00000003, R13
           let R16, R19
           sub R19, R15
           let R15, R16
           let R11, R19
           switch_call R83, 4:91:92:93:94
           add R13, R19
           add R12, R11
           write_global_flag 00000008, R12
           write_global_flag 00000003, R13
           jmp 95
    

    Questions, comments?

    Post is from Eden.

    This is basically how you can create a currency of some sort for a event quest.

    • Like 2
  12. The Empress and Rainbow are just edits of items that already existed, but were locked in the game client (which can be easily unlocked, Ultima probably has the said addresses unlocked). Larva could easily edit a few locked items to be exclusive for Ultima though.

    Here's a list of them:

    KROES SWEATER    01013Dh
    SONIC TEAM ARMOR    01013Fh
    Yahoo Engine!    031808h
    YAHOO    024a00h
    RAGE DE FEU    00ad00h
    RAGE DE FEU    00ad01h
    RAGE DE FEU    00ad02h
    UNKNOWN weapon1    00d000h
    UNKNOWN weapon2    00d100h
    Unknown MAG1    024300h
    Unknown Item1    031801h
    GAME MAGIZINE    006E00h
    Letter of appreciation    03140Ah
    Unknown Item2    03140Bh
    DISK VOL.4    031603h
    DISK VOL.5    031604h
    BLUE RING    010233h
    Unknown Shield1    010234h
    Unknown Shield2    010236h
    Unknown Shield3    010237h
    Unknown Shield4    010238h
    Unknown Shield5    010239h
    New Years Card    03120Bh
    Christmas Card    03120Ch
    Birthday Card    03120Dh
    Proof of Sonic Team    03120Eh
    Special Event Ticket    03120Fh
    LOGiN    000F03h
    BLACK GAUNTLETS    01029Ah
    HUNTERS SHELL    010230h
    BLUE RING    010253h
    BLUE RING    010254h
    BLUE RING    010255h
    BLUE RING    010256h
    BLUE RING    010257h
    BLUE RING    010258h
    BLUE RING    01025Ah
    GREEN RING    01025Bh
    GREEN RING    01025Ch
    GREEN RING    01025Dh
    GREEN RING    01025Eh
    GREEN RING    010260h
    GREEN RING    010261h
    GREEN RING    010262h
    YELLOW RING    010263h
    YELLOW RING    010264h
    YELLOW RING    010265h
    YELLOW RING    010267h
    YELLOW RING    010268h
    YELLOW RING    010269h
    YELLOW RING    01026Ah
    PURPLE RING    01026Bh
    PURPLE RING    01026Dh
    PURPLE RING    01026Eh
    PURPLE RING    01026Fh
    PURPLE RING    010270h
    PURPLE RING    010271h
    PURPLE RING    010272h
    WHITE RING    010274h
    WHITE RING    010276h
    WHITE RING    010277h
    WHITE RING    010278h
    WHITE RING    010279h
    WHITE RING    01027Ah
    BLACK RING    01027Ch
    BLACK RING    01027Dh
    BLACK RING    01027Eh
    BLACK RING    01027Fh
    BLACK RING    010281h
    MAG 0503    024D00h
    MAG 0504    024E00h
    MAG 0505    024F00h
    MAG 0506    025000h
    MAG 0507    025100h
    Cell of MAG 0503    03180Bh
    Cell of MAG 0504    03180Ch
    Cell of MAG 0505    03180Dh
    Cell of MAG 0506    03180Eh
    Cell of MAG 0507    03180Fh
    

    His program can actually add weapons (among other things besides just items themselves) to the file. Empress and Rainbow weren't added like that. To actually add stuff to the file you need to actually add the said data (which is easy). Then you have to fix all... what was it 300 ish pointers because they all need to be change due to the expanded file (you ain't doing that manually with a hex editor). People should be thankful for the editor he released in the first place though, if it wasn't for that you would still have completely default items now.

    Oh also, you'll only be able to convince him with words. He'll never give it for money, lol.

  13. I would keep practicing and learning qedit more before submitting quests. Quests with just tweaked spawns aren't really "new" that go the same exact path with the same exact script. I would personally, learn how Lost Heat Sword works completely (script, wave patterns and all). That's the best quest to learn a lot of stuff off of. You should know how to create a basic quest after learning from Lost Heat Sword, then you can look at harder things.

    Also, Lee and Larva are giving you constructive critisism from what I see here.

    • Like 3
  14. In my opinion, if you want this stuff, your better off playing on a private server for blue burst.

    I'm not really sure, but you can probably add gc versions of the quests to your memory card. If you want the exp rates to be 2x, your gonna probably have to edit the game disk with the said exp you want. I'm not sure how skins really work on the gamecube work, but probably another game disk change.

    If you just want it easier, just use a private server for blueburst.

  15. Larva didn't put the yellow ring on the allow list so you didn't get it I guess. This is a easily fixed problem though if Larva see's this.

    Also, you didn't finish Challenge mode fast enough to get a S rank, that's why it didn't pop up.

  16. On floors 10-18 I counted there are 17 of them. Up to 3 at once. Of those, a few of them can teleport around.

    I would bring a party with at least one force that can buff and debuff (if you don't you'll be debuffed the entire time unless you use pb). The Force can also revive anyone. Also, a Ranger with a Bringer's Rifle (it has pretty long range if I remember) and a Frozen Shooter/Snow Queen. The other 2 members can be anything.

    All your party members should have 10 moons and maybe a few scapes (unless your all about to die, try letting your force revive people mostly/only use moons on the force). The Twins pb if I remember can also revive people. Just make sure you got four people otherwise you might not even beat the timer.

    I've beaten this quest before/I made the quest. =p

    • Like 2
  17. Well, I coded it and it works. It's really easy to add items and prices for them now. It also, gives a propt if you wanna sell or not, default is no. I just need a list of items/prices for them still (which I might end up tweaking a little). Only things that he'll take right now are flowen swords (the common version) and last suvivors which I did to test it. Anyone willing to make that list? I would rather make quest (which by the way is barely started, all I did really so far was make some unique ish npcs with special functions, like this one) then do this list/pricing. Whoever does it, thankyou. o-o

×
×
  • Create New...