|
0 registered members (),
631
guests, and 2
spiders. |
|
Key:
Admin,
Global Mod,
Mod
|
|
|
Re: Req: Basic Level System
[Re: Mythran]
#170905
12/04/07 06:03
12/04/07 06:03
|
Joined: Apr 2005
Posts: 3,815 Finland
Inestical
Rabbit Developer
|
Rabbit Developer
Joined: Apr 2005
Posts: 3,815
Finland
|
I don't know any lying around but if you want a system, I can do it for you, and will start later today in C-Script, if you need it in Lite-C, sorry can't help then, since I still don't own A7.
"Yesterday was once today's tomorrow."
|
|
|
Re: Req: Basic Level System
[Re: Inestical]
#170906
12/04/07 08:14
12/04/07 08:14
|
Joined: Jan 2004
Posts: 3,023 The Netherlands
Helghast
Expert
|
Expert
Joined: Jan 2004
Posts: 3,023
The Netherlands
|
what you basically can do is: Code:
string levelStr[20]; // levelname CANT be bigger then 20 characters!
action change_level() { while(vec_dist(player.x, my.x) > my.skill1) { wait(1); } // as long as the player is (skill1) quants away, wait
str_for_entname (levelStr, my); // get the filename from WED str_cat(levelStr, ".wmb"); // add .wmb behind it
level_load(levelStr); // load the level with the string just created wait(5); } all you now have to do, is apply this action to your model in WED, and under properties of that model, give it the name of the level you want to load (without the .wmb, that's being added with this code itself). Set the distance you want to wait (in quants), on the models skill1, before the player triggers the code, and youre all set ^_^ did this from the top of my head, hope it works! regards,
|
|
|
Re: Req: Basic Level System
[Re: Helghast]
#170907
12/04/07 12:03
12/04/07 12:03
|
Joined: Apr 2005
Posts: 3,815 Finland
Inestical
Rabbit Developer
|
Rabbit Developer
Joined: Apr 2005
Posts: 3,815
Finland
|
Ohh.. That kind of ^^ I thought he meant leveling system =D
"Yesterday was once today's tomorrow."
|
|
|
Re: Req: Basic Level System
[Re: Inestical]
#170908
12/04/07 12:27
12/04/07 12:27
|
Joined: Jan 2004
Posts: 3,023 The Netherlands
Helghast
Expert
|
Expert
Joined: Jan 2004
Posts: 3,023
The Netherlands
|
Quote:
Ohh.. That kind of ^^ I thought he meant leveling system =D
well, i asked him what kind of levelling system, but it's kinda unclear, so i figure you can post a levelling system, so he's covered with both 
|
|
|
Re: Req: Basic Level System
[Re: Helghast]
#170909
12/04/07 12:59
12/04/07 12:59
|
Joined: Apr 2005
Posts: 3,815 Finland
Inestical
Rabbit Developer
|
Rabbit Developer
Joined: Apr 2005
Posts: 3,815
Finland
|
Leveling system = EXP panel, enemy-side code(exp-gain) and main stuff Level system = world changer, automatic enemy placement, switching panel and main stuff
Myrthan: which one you need ^^
"Yesterday was once today's tomorrow."
|
|
|
Re: Req: Basic Level System
[Re: Inestical]
#170910
12/04/07 16:52
12/04/07 16:52
|
Joined: Sep 2006
Posts: 292
Mythran
OP
Member
|
OP
Member
Joined: Sep 2006
Posts: 292
|
lol I didnīt know there was a "level system" what i want as you name it, is a leveling system (exp-gain, level-gain, str, dex, int points do add, etc.)
Last edited by Mythran; 12/04/07 16:53.
|
|
|
Re: Req: Basic Level System
[Re: Inestical]
#170912
12/04/07 19:46
12/04/07 19:46
|
Joined: Sep 2006
Posts: 292
Mythran
OP
Member
|
OP
Member
Joined: Sep 2006
Posts: 292
|
Sure  Thanks a lot. One more thing that may be usefull to me  I'm using kh movement code.  Thanks a lot for all you're effort.
|
|
|
Re: Req: Basic Level System
[Re: Mythran]
#170913
12/08/07 04:44
12/08/07 04:44
|
Joined: Aug 2005
Posts: 390 Florida
oldschoolj
Senior Member
|
Senior Member
Joined: Aug 2005
Posts: 390
Florida
|
hmm, My leveling system is my prize possesion. I COULD share it with you, but then I'd ahve to kill you! Just ask helghast he's seen it O.o. Advice? If you want a really cool leveling system, for both players and enemies, its going to require a crap load of math! I am not kdding. Here's a snippet from mine  hopefully this will help you out a bit. Code:
while (my.STATUS != DEATH) { player_level = my.LEVEL; //Experience current_experience = total_mob_experience + total_quest_experience; if (current_experience <= 1199) {my.LEVEL = 1; level_experience_total = 1200; experience_to_level = 1199 - current_experience; current_level_experience = 1199 - experience_to_level;} if ((current_experience >= 1200) && (current_experience < 4100)) {my.LEVEL = 2; level_experience_total = 2900; experience_to_level = 4099 - current_experience; current_level_experience = current_experience - 1199;} if ((current_experience >= 4100) && (current_experience < 8700)) {my.LEVEL = 3; level_experience_total = 4600; experience_to_level = 8699 - current_experience; current_level_experience = current_experience - 4099;} if ((current_experience >= 8700) && (current_experience < 15200)) {my.LEVEL = 4; level_experience_total = 6500; experience_to_level = 15199 - current_experience; current_level_experience = current_experience - 8699;} if ((current_experience >= 15200) && (current_experience < 23800)) {my.LEVEL = 5; level_experience_total = 8600; experience_to_level = 23799 - current_experience; current_level_experience = current_experience - 15199;} if ((current_experience >= 23800) && (current_experience < 34500)) {my.LEVEL = 6; level_experience_total = 10700; experience_to_level = 34499 - current_experience; current_level_experience = current_experience - 23799;} if ((current_experience >= 34500) && (current_experience < 47800)) {my.LEVEL = 7; level_experience_total = 13300; experience_to_level = 47799 - current_experience; current_level_experience = current_experience - 34499;} if ((current_experience >= 47800) && (current_experience < 63700)) {my.LEVEL = 8; level_experience_total = 15900; experience_to_level = 63699 - current_experience; current_level_experience = current_experience - 47799;} if ((current_experience >= 63700) && (current_experience < 82200)) {my.LEVEL = 9; level_experience_total = 18500; experience_to_level = 82199 - current_experience; current_level_experience = current_experience - 63699;} if ((current_experience >= 82200) && (current_experience < 103500)) {my.LEVEL = 10; level_experience_total = 21300; experience_to_level = 103499 - current_experience; current_level_experience = current_experience - 82199;} if ((current_experience >= 103500) && (current_experience < 127800)) {my.LEVEL = 11; level_experience_total = 24300; experience_to_level = 127799 - current_experience; current_level_experience = current_experience - 103499;} if ((current_experience >= 127800) && (current_experience < 155100)) {my.LEVEL = 12; level_experience_total = 27300; experience_to_level = 155099 - current_experience; current_level_experience = current_experience - 127799;} if ((current_experience >= 155100) && (current_experience < 185900)) {my.LEVEL = 13; level_experience_total = 30800; experience_to_level = 185899 - current_experience; current_level_experience = current_experience - 155099;} if ((current_experience >= 185900) && (current_experience < 220700)) {my.LEVEL = 14; level_experience_total = 34800; experience_to_level = 220699 - current_experience; current_level_experience = current_experience - 185899;} if ((current_experience >= 220700) && (current_experience < 259500)) {my.LEVEL = 15; level_experience_total = 38800; experience_to_level = 259499 - current_experience; current_level_experience = current_experience - 220699;} if ((current_experience >= 259500) && (current_experience < 302500)) {my.LEVEL = 16; level_experience_total = 43000; experience_to_level = 302499 - current_experience; current_level_experience = current_experience - 259499;} if ((current_experience >= 302500) && (current_experience < 349900)) {my.LEVEL = 17; level_experience_total = 47400; experience_to_level = 349899 - current_experience; current_level_experience = current_experience - 302499;} if ((current_experience >= 349900) && (current_experience < 401700)) {my.LEVEL = 18; level_experience_total = 51800; experience_to_level = 401699 - current_experience; current_level_experience = current_experience - 349899;} if ((current_experience >= 401700) && (current_experience < 458400)) {my.LEVEL = 19; level_experience_total = 56700; experience_to_level = 458499 - current_experience; current_level_experience = current_experience - 401699;} if (current_experience >= 458400) {my.LEVEL = 20; level_experience_total = 0;} Code:
function calculate_battle_xp() { if (player.LEVEL == my.LEVEL) //The mob is the same level? { total_mob_experience = total_mob_experience + (player.LEVEL * 4 + 60); // Tally xp } if ((player.LEVEL < my.LEVEL) && (mob_high_level_value <= 5)) //The mob is a higher level? { total_mob_experience = total_mob_experience + (player.LEVEL * 4 + 60) * (1 + 0.04 * (my.LEVEL - player.LEVEL)); //Tally xp } if ((player.LEVEL < my.LEVEL) && (mob_high_level_value > 5)) // The mob is higher than five level? { total_mob_experience = total_mob_experience + (player.LEVEL * 4 + 60) * (1 + 0.04 * (player.LEVEL + 5 - player.LEVEL)); //Tally xp } if (player.LEVEL > my.LEVEL) { if ((player.LEVEL <= 7) && (player.LEVEL <= (my.LEVEL + 5))) { mob_low_level_value = 5; total_mob_experience = total_mob_experience + ((player.LEVEL * 5 + 45) * (1 - (player.LEVEL - my.LEVEL) / mob_low_level_value)); } if ((player.LEVEL > 7) && (player.LEVEL < 10) && (player.LEVEL <= (my.LEVEL + 6))) { mob_low_level_value = 6; total_mob_experience = total_mob_experience + ((player.LEVEL * 5 + 45) * (1 - (player.LEVEL - my.LEVEL) / mob_low_level_value)); } if ((player.LEVEL > 9) && (player.LEVEL < 12) && (player.LEVEL <= (my.LEVEL + 7))) { mob_low_level_value = 7; total_mob_experience = total_mob_experience + ((player.LEVEL * 5 + 45) * (1 - (player.LEVEL - my.LEVEL) / mob_low_level_value)); } if ((player.LEVEL > 11) && (player.LEVEL < 16) && (player.LEVEL <= (my.LEVEL + 8))) { mob_low_level_value = 8; total_mob_experience = total_mob_experience + ((player.LEVEL * 5 + 45) * (1 - (player.LEVEL - my.LEVEL) / mob_low_level_value)); } if ((player.LEVEL > 15) && (player.LEVEL < 20) && (player.LEVEL <= (my.LEVEL + 9))) { mob_low_level_value = 9; total_mob_experience = total_mob_experience + ((player.LEVEL * 5 + 45) * (1 - (player.LEVEL - my.LEVEL) / mob_low_level_value)); } } } heres some of the variables that i use to keep track of things Code:
//**Advancement**// COM //Experience Point Variables var current_experience; //DEMO Current_experience = Total_mob_experience + Total_quest_experience var total_experience_possible = 500000; //DEMO The sum of adding all level experiences, plus a buffer of 41,600. var experience_to_level; //DEMO A sum decided by the function Player_xp_to_lvl var current_level_experience; //DEMO A sum decided by the function Player_current_lvl_xp var level_experience_total; //DEMO A sum decided by the function Player_lvl_xp_total var item_experience_bonus; //EXT A sum decided by the function Player_item_xp_bonus var total_mob_experience; //DEMO A sum decided by the function Player_mob_xp var total_quest_experience; //DEMO A sum decided by the function Player_xp
//Level Point Variables var current_level; //DEMO A sum decided by the function Player_current_level
//Mob Value Variables var mob_current_level; // DEMO The current level of the mob, A sum decided by the function Mob_lvl_is var mob_current_health; // DEMO The current health of the mob we have targeted, A sum decided by the function Current_mob_health var mob_total_health; //DEMO The total health of the mob before any damage is taken, decided by the function Mob_target_health var mob_death_my_target = 0; //DEMO 1=true, 0=false, this tells us weather or not we were in combat with the mob when it died. A sum decided by the function Mob_death_my_combat var mob_high_level_value; //DEMO the level difference xp bonus between a player and mob, a maximum of 5 is decided, the sum is caluclated by the function Mob_level_is var mob_low_level_value; //DEMO the level difference xp penalty between a player and mob, decided in the function Mob_level_is
you can find me with my face in the keyboard, unshaven, listening to some nameless techno tragedy, and hashing through code over a cold cup a stale joe.
__________________________________
yours truly
|
|
|
|