Thread: Kaizen

Page 1 of 2 12 LastLast
Results 1 to 10 of 16
  1. #1 Project Insanity - Netty - RS2 Engine - Refactored - Reformatted 
    Registered Member Crusty Buns's Avatar
    Join Date
    Jun 2013
    Age
    49
    Posts
    24
    Thanks given
    14
    Thanks received
    9
    Rep Power
    12
    Introdcution



    It provides an amazing base to begin creating and adding your own content as most everything is cleared from it; It has been reformatted and refactored making in a more logical manner then your typical Project Insanity release. This being said you'll have to get use to the packaging and have to use an IDE like Eclipse or IntelliJ as there are no compile or batch files.

    Features



    - Netty Networking
    - RS2 Game Engine
    - Reformatted Code
    - Refactored Packaging
    - Low Memory Usage
    - Fast Start Up

    Media



    Spoiler for Media:



    Download



    v1
    Media Fire Download
    Uppit Download

    Bug Fixes



    Spoiler for v1 Fixes:

    Client Class replace the process method with the following:

    Code:
    public void process() {
    		if(followId > 0) {
    			getPA().followPlayer();
    		} else if (followId2 > 0) {
    			getPA().followNpc();
    		}
    
    		if (System.currentTimeMillis() - lastPoison > 20000 && poisonDamage > 0) {
    			int damage = poisonDamage/2;
    			if (damage > 0) {
    				sendMessage("The poison damages you");
    				if (!getHitUpdateRequired()) {
    					setHitUpdateRequired(true);
    					setHitDiff(damage);
    					updateRequired = true;
    					poisonMask = 1;
    				} else if (!getHitUpdateRequired2()) {
    					setHitUpdateRequired2(true);
    					setHitDiff2(damage);
    					updateRequired = true;
    					poisonMask = 2;
    				}
    				lastPoison = System.currentTimeMillis();
    				poisonDamage--;
    				dealDamage(damage);
    			} else {
    				poisonDamage = -1;
    				sendMessage("You are no longer poisoned.");
    			}	
    		}
    
    		if(System.currentTimeMillis() - specDelay > Config.INCREASE_SPECIAL_AMOUNT) {
    			specDelay = System.currentTimeMillis();
    			if(specAmount < 10) {
    				specAmount += .5;
    				if (specAmount > 10)
    					specAmount = 10;
    				getItems().addSpecialBar(playerEquipment[playerWeapon]);
    			}
    		}
    
    		getCombat().handlePrayerDrain();
    
    		if(System.currentTimeMillis() - singleCombatDelay >  9900) {
    			underAttackBy = 0;
    		}
    		if (System.currentTimeMillis() - singleCombatDelay2 > 9900) {
    			underAttackBy2 = 0;
    		}
    
    		if(System.currentTimeMillis() - restoreStatsDelay >  60000) {
    			restoreStatsDelay = System.currentTimeMillis();
    			for (int level = 0; level < playerLevel.length; level++)  {
    				if (playerLevel[level] < getLevelForXP(playerXP[level])) {
    					if(level != 5) { // prayer doesn't restore
    						playerLevel[level] += 1;
    						getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    						getPA().refreshSkill(level);
    					}
    				} else if (playerLevel[level] > getLevelForXP(playerXP[level])) {
    					playerLevel[level] -= 1;
    					getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    					getPA().refreshSkill(level);
    				}
    			}
    		}
    
    		if (inWild()) {
    			int modY = absY > 6400 ? absY - 6400 : absY;
    			wildLevel = (((modY - 3520) / 8) + 1);
    			getPA().walkableInterface(197);
    			if (Config.SINGLE_AND_MULTI_ZONES) {
    				if (inMulti()) {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				} else {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				}
    			} else {
    				getPA().multiWay(-1);
    				getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    			}
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (inDuelArena()) {
    			getPA().walkableInterface(201);
    			if (duelStatus == 5) {
    				getPA().showOption(3, 0, "Attack", 1);
    			} else {
    				getPA().showOption(3, 0, "Challenge", 1);
    			}
    		} else if (inBarrows()) {
    			getPA().sendFrame99(2);
    			getPA().sendFrame126("Kill Count: " + barrowsKillCount, 4536);
    			getPA().walkableInterface(4535);
    		} else if (inCwGame || inPits) {
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (getPA().inPitsWait()) {
    			getPA().showOption(3, 0, "Null", 1);
    		} else if (!inCwWait) {
    			getPA().sendFrame99(0);
    			getPA().walkableInterface(-1);
    			getPA().showOption(3, 0, "Null", 1);
    		}
    
    		if(!hasMultiSign && inMulti()) {
    			hasMultiSign = true;
    			getPA().multiWay(1);
    		}
    
    		if(hasMultiSign && !inMulti()) {
    			hasMultiSign = false;
    			getPA().multiWay(-1);
    		}
    
    		if(skullTimer > 0) {
    			skullTimer--;
    			if(skullTimer == 1) {
    				isSkulled = false;
    				attackedPlayers.clear();
    				headIconPk = -1;
    				skullTimer = -1;
    				getPA().requestUpdates();
    			}	
    		}
    		
    		if(hitDelay > 0) {
    			hitDelay--;
    		}
    		
    		if(hitDelay == 1) {
    			if(oldNpcIndex > 0) {
    				getCombat().delayedHit(oldNpcIndex);
    			}
    			if(oldPlayerIndex > 0) {
    				getCombat().playerDelayedHit(oldPlayerIndex);				
    			}		
    		}
    		
    		if(attackTimer > 0) {
    			attackTimer--;
    		}
    		
    		if(attackTimer == 1){
    			if(npcIndex > 0 && clickNpcType == 0) {
    				getCombat().attackNpc(npcIndex);
    			}
    			if(playerIndex > 0) {
    				getCombat().attackPlayer(playerIndex);
    			}
    		} else if (attackTimer <= 0 && (npcIndex > 0 || playerIndex > 0)) {
    			if (npcIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackNpc(npcIndex);
    			} else if (playerIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackPlayer(playerIndex);
    			}
    		}
    
    		if(isDead && respawnTimer == -6) {
    			getPA().applyDead();
    		}
    
    		if(respawnTimer == 7) {
    			respawnTimer = -6;
    			getPA().giveLife();
    		} else if(respawnTimer == 12) {
    			respawnTimer--;
    			startAnimation(0x900);
    			poisonDamage = -1;
    		}	
    
    		if(respawnTimer > -6) {
    			respawnTimer--;
    		}
    		if(freezeTimer > -6) {
    			freezeTimer--;
    			if (frozenBy > 0) {
    				if (PlayerHandler.players[frozenBy] == null) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				} else if (!goodDistance(absX, absY, PlayerHandler.players[frozenBy].absX, PlayerHandler.players[frozenBy].absY, 20)) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				}
    			}
    		}
    		if(teleTimer > 0) {
    			teleTimer--;
    			if (!isDead) {
    				if(teleTimer == 1 && newLocation > 0) {
    					teleTimer = 0;
    					getPA().changeLocation();
    				}
    				if(teleTimer == 5) {
    					teleTimer--;
    					getPA().processTeleport();
    				}
    				if(teleTimer == 9 && teleGfx > 0) {
    					teleTimer--;
    					gfx100(teleGfx);
    				}
    			} else {
    				teleTimer = 0;
    			}
    		}	
    	}
    Inside the TradeAndDuel Class find the following and underneath it add the section of code
    Code:
    c.tradeResetNeeded = true;
    Code:
    CycleEventHandler.getSingleton().addEvent(this, new CycleEvent() {
    				public void execute(CycleEventContainer container) {
    					if(c.inTrade && c.tradeResetNeeded){
    						Client o = (Client) PlayerHandler.players[c.tradeWith];
    						if(o != null){
    							if(o.tradeResetNeeded){
    								c.getTradeAndDuel().resetTrade();
    								o.getTradeAndDuel().resetTrade();
    								container.stop();
    							} else {
    								container.stop();
    							}
    						} else {
    							container.stop();
    						}
    					} else {
    						container.stop();
    					}
    				}
    
    				@Override
    				public void stop() {
    					c.tradeResetNeeded = false;
    				}
    			}, 1);
    You'll have to import the following

    Code:
    import server.event.CycleEvent;
    import server.event.CycleEventContainer;
    import server.event.CycleEventHandler;


    Credits



    Graham
    Sanity
    Blakeman8192
    Lmctruck30
    Jinrake
    Senpai
    Braeden
    Reply With Quote  
     

  2. Thankful user:


  3. #2  
    Registered Member Crusty Buns's Avatar
    Join Date
    Jun 2013
    Age
    49
    Posts
    24
    Thanks given
    14
    Thanks received
    9
    Rep Power
    12
    Never applied the fixes Senpai released which didn't allow the NPC's to attack back and a dupe within the Dueling Arena. The fixes can be found within the Bug Fixes section. Sorry for the inconvenience.
    Reply With Quote  
     

  4. #3  
    Project Drop-Zone Owner & The BLOOD Gang Always Banging RED


    Join Date
    May 2013
    Age
    28
    Posts
    2,992
    Thanks given
    5
    Thanks received
    937
    Rep Power
    183
    Quote Originally Posted by True Faith View Post
    What's with the releases nowadays. Same shit everyday.
    I release something similar and a lot of people follow. Seems to me i'm a role model. I agree with what you are saying though. Mine and this shouldn't of been uploaded in the first place until actual work was put into it.
    Reply With Quote  
     

  5. #4  
    Registered Member
    Join Date
    Nov 2012
    Posts
    447
    Thanks given
    26
    Thanks received
    35
    Rep Power
    14
    awww, no client dl lol
    Reply With Quote  
     

  6. #5  
    Registered Member Crusty Buns's Avatar
    Join Date
    Jun 2013
    Age
    49
    Posts
    24
    Thanks given
    14
    Thanks received
    9
    Rep Power
    12
    Quote Originally Posted by JoshS View Post
    awww, no client dl lol
    The client is Eliminate's v0.6 Client release which can be found here.
    Reply With Quote  
     

  7. #6  
    Registered Member
    Join Date
    Jan 2014
    Posts
    26
    Thanks given
    11
    Thanks received
    4
    Rep Power
    14
    Besides the fact that it is such a simple release it looks like it has some potential. Wasn't really sure what he meant by reformatting the code, but its some of the most organized code I've ever seen. Good job and looking forward to later released because of the clipping and combat.

    Oh and the packaging is really nice!
    Reply With Quote  
     

  8. #7  
    Contaminated

    Radiated's Avatar
    Join Date
    Mar 2011
    Age
    27
    Posts
    928
    Thanks given
    255
    Thanks received
    164
    Rep Power
    240
    wat
    fuckoff
    Reply With Quote  
     

  9. #8  
    Registered Member
    Join Date
    Dec 2013
    Posts
    148
    Thanks given
    17
    Thanks received
    8
    Rep Power
    15
    no client in it?
    Quote Originally Posted by Braeden View Post

    Introdcution



    Kaizen is not your typical download; Its not content filled or ready to host but it does feature some of the most stability out there for a Project Insanity release. Kaizen has Netty Networking and RS2 Game Engine, which we know is already out to download, but it also has been refactored and the code as been reformatted to make it easier for Java to read. Kaizen has numerous fixes for memory leaks making it require very little memory to run. This is just the beginning for Kaizen and I have plans to add functional clipping and elite combat.

    Features



    - Netty Networking
    - RS2 Game Engine
    - Reformatted Code
    - Refactored Packaging
    - Low Memory Usage
    - Fast Start Up

    Development Log



    Spoiler for Log:

    Code:
    - Downloaded Project Insanity - Netty Networking - RS2 Game Engine
    - Completely repackaged source
    - Completely reformatted code
    - Applied Fixes to Memory Leaks
    - Majority of Warnings fixed


    Media



    Spoiler for Media:



    Download



    v1
    Media Fire Download
    Uppit Download

    Bug Fixes



    Spoiler for v1 Fixes:

    Client Class replace the process method with the following:

    Code:
    public void process() {
    		if(followId > 0) {
    			getPA().followPlayer();
    		} else if (followId2 > 0) {
    			getPA().followNpc();
    		}
    
    		if (System.currentTimeMillis() - lastPoison > 20000 && poisonDamage > 0) {
    			int damage = poisonDamage/2;
    			if (damage > 0) {
    				sendMessage("The poison damages you");
    				if (!getHitUpdateRequired()) {
    					setHitUpdateRequired(true);
    					setHitDiff(damage);
    					updateRequired = true;
    					poisonMask = 1;
    				} else if (!getHitUpdateRequired2()) {
    					setHitUpdateRequired2(true);
    					setHitDiff2(damage);
    					updateRequired = true;
    					poisonMask = 2;
    				}
    				lastPoison = System.currentTimeMillis();
    				poisonDamage--;
    				dealDamage(damage);
    			} else {
    				poisonDamage = -1;
    				sendMessage("You are no longer poisoned.");
    			}	
    		}
    
    		if(System.currentTimeMillis() - specDelay > Config.INCREASE_SPECIAL_AMOUNT) {
    			specDelay = System.currentTimeMillis();
    			if(specAmount < 10) {
    				specAmount += .5;
    				if (specAmount > 10)
    					specAmount = 10;
    				getItems().addSpecialBar(playerEquipment[playerWeapon]);
    			}
    		}
    
    		getCombat().handlePrayerDrain();
    
    		if(System.currentTimeMillis() - singleCombatDelay >  9900) {
    			underAttackBy = 0;
    		}
    		if (System.currentTimeMillis() - singleCombatDelay2 > 9900) {
    			underAttackBy2 = 0;
    		}
    
    		if(System.currentTimeMillis() - restoreStatsDelay >  60000) {
    			restoreStatsDelay = System.currentTimeMillis();
    			for (int level = 0; level < playerLevel.length; level++)  {
    				if (playerLevel[level] < getLevelForXP(playerXP[level])) {
    					if(level != 5) { // prayer doesn't restore
    						playerLevel[level] += 1;
    						getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    						getPA().refreshSkill(level);
    					}
    				} else if (playerLevel[level] > getLevelForXP(playerXP[level])) {
    					playerLevel[level] -= 1;
    					getPA().setSkillLevel(level, playerLevel[level], playerXP[level]);
    					getPA().refreshSkill(level);
    				}
    			}
    		}
    
    		if (inWild()) {
    			int modY = absY > 6400 ? absY - 6400 : absY;
    			wildLevel = (((modY - 3520) / 8) + 1);
    			getPA().walkableInterface(197);
    			if (Config.SINGLE_AND_MULTI_ZONES) {
    				if (inMulti()) {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				} else {
    					getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    				}
    			} else {
    				getPA().multiWay(-1);
    				getPA().sendFrame126("@yel@Level: " + wildLevel, 199);
    			}
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (inDuelArena()) {
    			getPA().walkableInterface(201);
    			if (duelStatus == 5) {
    				getPA().showOption(3, 0, "Attack", 1);
    			} else {
    				getPA().showOption(3, 0, "Challenge", 1);
    			}
    		} else if (inBarrows()) {
    			getPA().sendFrame99(2);
    			getPA().sendFrame126("Kill Count: " + barrowsKillCount, 4536);
    			getPA().walkableInterface(4535);
    		} else if (inCwGame || inPits) {
    			getPA().showOption(3, 0, "Attack", 1);
    		} else if (getPA().inPitsWait()) {
    			getPA().showOption(3, 0, "Null", 1);
    		} else if (!inCwWait) {
    			getPA().sendFrame99(0);
    			getPA().walkableInterface(-1);
    			getPA().showOption(3, 0, "Null", 1);
    		}
    
    		if(!hasMultiSign && inMulti()) {
    			hasMultiSign = true;
    			getPA().multiWay(1);
    		}
    
    		if(hasMultiSign && !inMulti()) {
    			hasMultiSign = false;
    			getPA().multiWay(-1);
    		}
    
    		if(skullTimer > 0) {
    			skullTimer--;
    			if(skullTimer == 1) {
    				isSkulled = false;
    				attackedPlayers.clear();
    				headIconPk = -1;
    				skullTimer = -1;
    				getPA().requestUpdates();
    			}	
    		}
    		
    		if(hitDelay > 0) {
    			hitDelay--;
    		}
    		
    		if(hitDelay == 1) {
    			if(oldNpcIndex > 0) {
    				getCombat().delayedHit(oldNpcIndex);
    			}
    			if(oldPlayerIndex > 0) {
    				getCombat().playerDelayedHit(oldPlayerIndex);				
    			}		
    		}
    		
    		if(attackTimer > 0) {
    			attackTimer--;
    		}
    		
    		if(attackTimer == 1){
    			if(npcIndex > 0 && clickNpcType == 0) {
    				getCombat().attackNpc(npcIndex);
    			}
    			if(playerIndex > 0) {
    				getCombat().attackPlayer(playerIndex);
    			}
    		} else if (attackTimer <= 0 && (npcIndex > 0 || playerIndex > 0)) {
    			if (npcIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackNpc(npcIndex);
    			} else if (playerIndex > 0) {
    				attackTimer = 0;
    				getCombat().attackPlayer(playerIndex);
    			}
    		}
    
    		if(isDead && respawnTimer == -6) {
    			getPA().applyDead();
    		}
    
    		if(respawnTimer == 7) {
    			respawnTimer = -6;
    			getPA().giveLife();
    		} else if(respawnTimer == 12) {
    			respawnTimer--;
    			startAnimation(0x900);
    			poisonDamage = -1;
    		}	
    
    		if(respawnTimer > -6) {
    			respawnTimer--;
    		}
    		if(freezeTimer > -6) {
    			freezeTimer--;
    			if (frozenBy > 0) {
    				if (PlayerHandler.players[frozenBy] == null) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				} else if (!goodDistance(absX, absY, PlayerHandler.players[frozenBy].absX, PlayerHandler.players[frozenBy].absY, 20)) {
    					freezeTimer = -1;
    					frozenBy = -1;
    				}
    			}
    		}
    		if(teleTimer > 0) {
    			teleTimer--;
    			if (!isDead) {
    				if(teleTimer == 1 && newLocation > 0) {
    					teleTimer = 0;
    					getPA().changeLocation();
    				}
    				if(teleTimer == 5) {
    					teleTimer--;
    					getPA().processTeleport();
    				}
    				if(teleTimer == 9 && teleGfx > 0) {
    					teleTimer--;
    					gfx100(teleGfx);
    				}
    			} else {
    				teleTimer = 0;
    			}
    		}	
    	}
    Inside the TradeAndDuel Class find the following and underneath it add the section of code
    Code:
    c.tradeResetNeeded = true;
    Code:
    CycleEventHandler.getSingleton().addEvent(this, new CycleEvent() {
    				public void execute(CycleEventContainer container) {
    					if(c.inTrade && c.tradeResetNeeded){
    						Client o = (Client) PlayerHandler.players[c.tradeWith];
    						if(o != null){
    							if(o.tradeResetNeeded){
    								c.getTradeAndDuel().resetTrade();
    								o.getTradeAndDuel().resetTrade();
    								container.stop();
    							} else {
    								container.stop();
    							}
    						} else {
    							container.stop();
    						}
    					} else {
    						container.stop();
    					}
    				}
    
    				@Override
    				public void stop() {
    					c.tradeResetNeeded = false;
    				}
    			}, 1);


    Credits



    Graham
    Sanity
    Blakeman8192
    Lmctruck30
    Jinrake
    Senpai
    Braeden
    Reply With Quote  
     

  10. #9  
    Registered Member
    Join Date
    May 2013
    Posts
    1,169
    Thanks given
    28
    Thanks received
    133
    Rep Power
    53
    Quote Originally Posted by Necromancy View Post
    no client in it?
    It's eliminate's v0.6
    If only I hadn't given you up, my life could've been different.
    Reply With Quote  
     

  11. #10  
    Registered Member
    Join Date
    Jan 2014
    Posts
    138
    Thanks given
    19
    Thanks received
    4
    Rep Power
    13
    is that a good base to start off? like adding my own skills,minigames and combat let me know, looks very nice!
    Reply With Quote  
     

Page 1 of 2 12 LastLast

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •