2009scape-website/services/m=devblog/view_post7b09.html
2020-11-24 12:27:36 -05:00

250 lines
16 KiB
HTML
Raw Blame History

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Mirrored from services/m=devblog/view_post.ws?post_id=9&page=7 by HTTrack Website Copier/3.x [XR&CO'2010], Sun, 18 Jul 2010 10:52:21 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"><!-- /Added by HTTrack -->
<head>
<link rel="icon" type="image/vnd.microsoft.icon" href="../../site/favicon.ico">
<link rel="SHORTCUT ICON" href="../../site/favicon.ico">
<link rel="apple-touch-icon" href="../../site/img/mobile.png">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Language" content="
en,
English
">
<meta name="keywords" content="RuneScape Developers' Blogs">
<meta name="description" content="RuneScape Developers' Blogs - Mod Chihiro reveals what that mysterious <20>Rest<73> button was all about.">
<meta name="title" content="Run Energy - Rest and Musicians">
<title>Run Energy - Rest and Musicians</title>
<style type="text/css">/*\*/@import url(../../site/css/global-34.css);/**/</style>
<script type="text/javascript" src="../../www.jagex.com/js/jquery/jquery_1_3_2.js"></script>
<script type="text/javascript">
$(function(){
$("#play, #playExisting, #playBannerNoad").each(function(){ this.href += "?j=1"; })
})
</script>
<link rel="stylesheet" type="text/css" href="../../site/css/kbase-6.css" media="all">
<link rel="stylesheet" type="text/css" href="../../site/css/devblog-2.css" media="all">
<link rel="stylesheet" type="text/css" href="../../site/css/sifr-0.css" media="all">
<script type="text/javascript" src="../../site/css/sifr_core-0.js"></script>
<script type="text/javascript">
var Trajan_Pro_Bold = { src: 'http://site/img/sifr/Trajan_Pro_Bold.swf' };
sIFR.activate(Trajan_Pro_Bold);
sIFR.replace(Trajan_Pro_Bold, {
selector: 'h2',
css: '.sIFR-root { font-weight: bold; font-size: 23px; text-align: center; opacity: 0.95; leading: -1; color: #411f13; }'
+ ', .sIFR-root a { color: #411f13; }'
+ ', .sIFR-root a:hover { color: #411f13; }',
wmode: 'transparent'
});
</script>
</head>
<body id="nav" class="bodyBackground">
<a name="top"></a>
<div class="bodyBackgroundHead">
<div id="menubox">
<ul id="menus">
<li class="top"><a href="../../site/title.html" id="home" class="tl"><span class="ts">Home</span></a></li>
<li class="top"><a id="play" class="tl" href="https://github.com/2009scape/2009Scape/releases/latest/download/2009Scape.jar"
onclick="try{pageTracker._trackPageview('/play_game/menu/top')}catch(x){}; try{_pageTracker._trackPageview('/play_game/menu/top')}catch(x){}"
><span class="ts">Play Now</span><!--[if gt IE 6]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="../../secure.runescape.com/m%3dcreate/index.html" class="fly"><span>New Users</span></a></li>
<li><a href="https://github.com/2009scape/2009Scape/releases/latest/download/2009Scape.jar" id="playExisting"
onclick="try{pageTracker._trackPageview('/play_game/menu/existing')}catch(x){}; try{_pageTracker._trackPageview('/play_game/menu/existing')}catch(x){}"
class="fly"><span>Existing Users</span></a></li>
<li><a href="../../site/options.html" class="fly"><span>Java Options</span></a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li class="top"><a id="account" class="tl" href="../../site/account_management.html"><span class="ts">Account</span><!--[if gt IE 6]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<ul>
<li><a href="../../secure.runescape.com/m%3dweblogin/members/members.html" class="fly"><span>Upgrade Your Account</span></a></li>
<li><a href="../../secure.runescape.com/m%3dcreate/index-2.html" class="fly"><span>Create New Account</span></a></li>
<li><a href="../../site/account_management.html" class="fly"><span>Account Management</span></a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li class="top"><a id="guide" class="tl" href="../../site/kbase/guid/manual.html"><span class="ts">Game Guide</span><!--[if gt IE 6]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<!--[if lte IE 6]><iframe src=""></iframe><![endif]-->
<ul>
<li><a href="../../site/kbase/guid/manual.html" class="fly"><span>Manual</span></a></li>
<li><a href="../../secure.runescape.com/m%3dweblogin/loginform802b.html" class="fly"><span>QuestHelp</span></a></li>
<li><a href="../m%3ditemdb_rs/frontpage.html" class="fly"><span>Grand Exchange</span></a></li>
<li><a href="../../site/kbase/guid/rules_of_conduct.html" class="fly"><span>Rules</span></a></li>
<li><a href="../../site/kbase/guid/lore.html" class="fly"><span>Lores</span></a></li>
<li><a href="../../site/splash.html" class="fly"><span>What is RuneScape?</span></a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li class="top"><a id="community" class="tl" href="../m%3dforum/forums.html"><span class="ts">Community</span><!--[if gt IE 6]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<!--[if lte IE 6]><iframe src=""></iframe><![endif]-->
<ul>
<li><a href="../m%3dforum/forums.html" class="fly"><span>Forums</span></a></li>
<li><a href="../m%3dhiscore/hiscores.html" class="fly"><span>Hiscores</span></a></li>
<li><a href="../../site/kbase/guid/Player_Submissions.html" class="fly"><span>Player Submissions</span></a></li>
<li><a href="../m%3dadventurers-log/index.html" class="fly"><span>Adventurer's Log</span></a></li>
<li><a href="../m%3dpoll/index.html" class="fly"><span>Polls</span></a></li>
<li><a href="../../site/kbase/guid/Downloads_and_Wallpapers.html" class="fly"><span>Downloads &amp; Wallpapers</span></a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li class="top"><a id="help" class="tl" href="../../site/kbase/guid/Customer_Support.html"><span class="ts">Help</span><!--[if gt IE 6]><!--></a><!--<![endif]-->
<!--[if lte IE 6]><table><tr><td><![endif]-->
<!--[if lte IE 6]><iframe src=""></iframe><![endif]-->
<ul>
<li><a href="../../site/kbase/guid/Customer_Support.html" class="fly"><span>Customer Support</span></a></li>
<li><a href="../../site/loginapplet/loginappletb4b5.html?mod=www&amp;dest=loginapplet/loginapplet.ws?mod=accountappeal&amp;dest=passwordchoice.ws" class="fly"><span>Password Recovery</span></a></li>
<li><a href="../../site/loginapplet/loginappletef7e.html?mod=www&amp;dest=loginapplet/loginapplet.ws?mod=accountappeal&amp;dest=lockchoice.ws" class="fly"><span>Locked Account Recovery</span></a></li>
<li><a href="../../secure.runescape.com/m%3dweblogin/loginform14d4.html?mod=offence-appeal&amp;dest=index.ws" class="fly"><span>Appeal Bans &amp; Mutes</span></a></li>
<li><a href="../m%3dbugtracker_v4/index.html" class="fly"><span>Submit a Bug Report</span></a></li>
<li><a href="../../site/parents.html" class="fly"><span>Parents' Guide</span></a></li>
</ul>
<!--[if lte IE 6]></td></tr></table></a><![endif]-->
</li>
<li class="top"><a href="../../secure.runescape.com/m%3dweblogin/loginform53bb.html?mod=www&amp;ssl=0&amp;dest=index.ws" id="login" class="tl"><span class="ts">Log In</span></a></li>
</ul>
<br class="clear" />
</div>
<div id="bannerNoad">
<a href="https://github.com/2009scape/2009Scape/releases/latest/download/2009Scape.jar" class="HoverImg" id="playBannerNoad"><img src="../../site/img/main/skins/default/playnowc20a.png?12" alt="Play Now" /></a>
</div>
<div id="scroll">
<div id="head"><div id="headBg">
<div id="langAndLogin">
<div id="lang">
<a href="../../site/title.html"><img alt="English" title="English" src="../../site/img/main/layout/en.gif" /></a>
<a href="../../site/l%3d1/title.html"><img alt="Deutsch" title="Deutsch" src="../../site/img/main/layout/de.gif" /></a>
<a href="../../site/l%3d2/title.html"><img alt="Fran&ccedil;ais" title="Fran&ccedil;ais" src="../../site/img/main/layout/fr.gif" /></a>
<a href="../../site/l%3d3/title.html"><img alt="Portugu&ecirc;s (BR)" title="Portugu&ecirc;s (BR)" src="../../site/img/main/layout/br.gif" /></a>
</div>
</div>
</div></div>
<div class="navigation">
<div class="location">
<b>Location: </b> <a href="../../site/title.html">Home</a> &gt;
<a href="index235c.html?page=7"><span>Developer Blogs</span></a> <span class="divider">&gt;</span>
<span><span>Run Energy: Rest and Musicians</span></span>
</div>
</div>
<div id="content"> <div id="article">
<div class="sectionHeader">
<div class="left">
<div class="right">
<h1 class="plaque">
Run Energy: Rest and Musicians
</h1>
</div>
</div>
</div>
<div class="section">
<div class="article">
<div class="topshadow">
<div class="bottombordershad">
<div class="leftshadow">
<div class="rightshadow">
<div class="leftcorner">
<div class="rightcorner">
<div class="bottomleftshad">
<div class="bottomrightshad">
<div id="post">
<div class="devblog">
<div class="devblogHead">
<div class="devblogFoot">
<div id="archives"><a href="index235c.html?page=7">&lt; Back to archive</a></div>
<h2>
Rest and Musicians
<br/>
by <a href="indexb2bb.html?author_id=8">Mod<EFBFBD>Chihiro</a> 23-Apr-2009
</h2>
<div class="content"><p>A few weeks ago, we accidentally released a version of the top level interface that had a test option on the run button called <20>Rest<73>. Oops! That was my mistake. Still, now the cat is out of the bag, we might as well tell you about this project. When I looked at the forums you<6F>d made some pretty good guesses about this feature - resting is a way to restore your run energy more rapidly.</p><p></p></div><div class="hr"></div><h3>What is Rest?</h3><div class="imgright"><div class="topbord"><div class="bottombord"><div class="leftbord"><div class="rightbord"><div class="toplcorn"><div class="toprcorn"><div class="bottomlcorn"><div class="bottomrcorn"><a href="images/rest/busker_concepts.jpg"><img src="images/rest/busker_concepts_thumb.jpg" alt="Concept artwork for some of the buskers" /></a></div></div></div></div></div></div></div></div><a href="images/rest/busker_concepts.jpg">Concept artwork for some of the buskers</a></div><div class="content"><p></p><p>When I got the original rest concept brief it had two parts:<br /><ol><li>Create a <20>rest<73> function that the player can use anywhere that will restore run energy more quickly than normal.</li><li>Create benches that would allow players to sit on and restore run energy even more rapidly.</li></ol></p><p>In planning what was going to be required, I quickly came to the conclusion that benches were not the way to go. We still encounter problems creating animations that work well in software mode for when players are sitting on furniture. Also, the technique to do this would have meant only one player could sit on a bench at a time. From a gameplay point of view this would have been a problem - the last thing I want is for players to have to queue for rest spots.</p><p>So I had to come up with another idea. I toyed with cushions and small glades and the like, but they all felt a bit weak. There needed to be a reason why one spot would be better for resting than anywhere else. <span class="strong">Mod Ash</span> suggested that using NPCs rather than locations might be a better approach, and from that the idea of buskers came to mind. People tend to gather round buskers in real life, so the rest spots wouldn't look incongruous, and I thought they would add some extra flavour to the more well-populated areas where these are going to be placed.</p><p>Having cleared this idea change with <span class="strong">Mod Mark</span> and <span class="strong">Andrew</span> I talked to the <span class="strong">Graphics</span> team. These musicians were to be scattered all over the map, so had to stand out enough for them to be easily spotted, but also fit in with the theme of the area they<65>re in. <span class="strong">Mod Zephyri</span> came up with some lovely concept images of bards. They were dressed brightly, but in a renaissance style that fits in nicely with most city environments. They looked great, so <span class="strong">Mod Brass</span>, <span class="strong">Mod Woody</span> and some others got to work creating models and animations for them.</p><p></p></div><div class="hr"></div><h3>Musicians</h3><div class="imgleft"><div class="topbord"><div class="bottombord"><div class="leftbord"><div class="rightbord"><div class="toplcorn"><div class="toprcorn"><div class="bottomlcorn"><div class="bottomrcorn"><a href="images/rest/busker_ingame.jpg"><img src="images/rest/busker_ingame_thumb.jpg" alt="An in-game screenshot of a busker" /></a></div></div></div></div></div></div></div></div><a href="images/rest/busker_ingame.jpg">An in-game screenshot of a busker</a></div><div class="content"><p></p><p>We looked separately at the more isolated areas where we wanted to put musicians. A lute-playing bard may look great in Falador, but would look pretty silly in Isafdar or Mort Myre, so <span class="strong">Graphics</span> created custom NPCs for these places. I especially enjoyed working on these as we had to come up with different ideas for why they were there. Since they were mostly embedded in higher level areas, the need for them to explain their functionality was lessened, so I could have a little fun adding flavour to them.</p><p>Since we<77>d decided on musicians, we needed some music for them to play. I wanted the music to be a little different than most music in the game, as these were individual musicians playing a ditty, not an epic soundtrack. The audio guys created some lovely simple pieces of music for the musicians - mostly stripped down version of the local themes. I even specifically asked for one of the songs to be really bad, which <span class="strong">Mod Bond</span> did really well!</p><p>The next set of problems lay with visual feedback: how to tell the player that they were resting. I wasn't sure of the best way to do this initially, so I tried out several methods - head icons, glowing animation effects that pulsed under the player - but after some tests, it became clear to us that these were a bit too intrusive, so I went for changing the run button icon on the top level interface, with a little glowing effect to draw the eye.</p><p>So, my work is nearly done - our balancer is working on tweaking the update to ensure that the restore rates are useful, but not over-powered, and full QA, editing and translation are still to come, but hopefully you<6F>ll be able to rest soon.</p><p>Don<EFBFBD>t forget to have a rest every now and again! See ya.</p></div>
<br class="clear" />
<div id="meta">
Project: <a href="indexa26e.html?project_id=5">Run Energy</a><br />
Tags:
<a href="index8369.html?tag_id=11">agility</a>, <a href="index629a.html?tag_id=3">development</a>, <a href="index5f7d.html?tag_id=37">run energy</a></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br class="clear"/>
</div>
<div id="footer">
<div class="contain">
<div class="footerdesc">
This website and its contents are copyright <20> under AGPL.<br />
Use of this website is subject to our <a href="../../site/terms/terms.html">Terms &amp; Conditions</a> and <a href="../../site/privacy/privacy.html">Privacy Policy</a>.
</div>
<a class="jagexlink" href="../../www.jagex.com/index.html" target="_blank">
<img src="../../site/img/main/layout/jagexc20a.png?12" alt="Jagex" />
</a>
<br class="clear"/>
</div>
<br class="clear"/>
</div>
</div>
</div>
<script type="text/javascript">
document.write(unescape("%3Cscript src='"+(("https:"==document.location.protocol)?"https://ssl":"http://www")+".google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var _pageTracker=_gat._getTracker("UA-2058817-15");
_pageTracker._setDomainName(".runescape.com");
_pageTracker._trackPageview();
}catch(x){}
</script>
<script type="text/javascript">
try {
var pageTracker=_gat._getTracker("UA-2058817-2");
pageTracker._setDomainName(".runescape.com");
pageTracker._trackPageview();
}catch(x){}
</script>
</body>
<!-- Mirrored from services/m=devblog/view_post.ws?post_id=9&page=7 by HTTrack Website Copier/3.x [XR&CO'2010], Sun, 18 Jul 2010 10:52:22 GMT -->
<!-- Added by HTTrack --><meta http-equiv="content-type" content="text/html;charset=ISO-8859-1"><!-- /Added by HTTrack -->
</html>