Posts for Derakon


Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Can't, or won't? I love how topic creators think they get to decide how people use their topics. :p
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Um...I don't know what you're talking about with "central power capacitors"; perhaps you are joking? The clipboard is stored in RAM, which is, as a general rule, wiped when you boot up; certainly whatever is there from the old boot can't be trusted so the "is there something in the clipboard" bit should be set to 0 on startup. For that matter, it's different RAM for different OSes.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
This is what explanations in the submission text are for. Same as e.g. missed shots or walking out of your way for luck manipulation.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Thanks for the feedback, Boco! That's awesome, and it'll be a big help for polishing the game design. Taking it point by point: * Glad to hear that 15 territories seems to work well. How many players did you have? I imagine that this game, like with Settlers, has an optimum "density" of players (where as you add players, it's a good idea to use maps with more territories). * Balancing fundraising. This'll be tricky. AKA's point is perfectly valid, and I love how that emergent behavior tracks true to reality, but we also need to make the game more interesting than just "fundraise, fundraise, fundraise, okay now go do a blitz campaign". Your emblem idea sounds reasonable and should keep bookkeeping low. Alternatively, each state could have a marker indicating that it can be fundraised from; when you fundraise there, the marker is removed until the beginning of the next month (when everyone gets their paychecks in :) ). * Moderate positions being too powerful -- I had thought that the ease with which moderate votes could be stolen by extremists would counter their ease of gaining votes, but looking back on it, my reasoning was flawed. Pre-statting or point-buy systems would have to also change the rules for self-reinvention (otherwise you start with arbitrary stats and then just reinvent on your first turn), so I'm inclined to try to find some way to make moderates just less powerful in general, like the fundraising idea you suggested. It'll be tricky finding something that doesn't make dice resolution even more complicated though. Bears some thought. * Reading the map will be easier on a computerized version of the game, but fundamentally, even with a 15-territory board, I just don't see a way to get status updates on a real board that doesn't involve lots of bookkeeping. The information is always available, though; voting is currently entirely deterministic. So it's certainly possible to, once a month, determine who is currently winning. I'm not certain I'm comfortable mandating that though. Again, it's totally awesome that someone actually played the game and had fun doing so. It's great motivation. :)
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Moozooh: I don't agree. To pick an extreme example, say there was a glitch that allowed you to get a 1-pixel-per-second faster walking speed, but completely broke the graphics of the game. You'd be slightly faster by using it, yes, but the TAS would be unwatchable. In short, the TASer has to balance the speed gains vs. any potential loss in entertainment. Sometimes glitches make things more entertaining, sometimes they make things less, sometimes it depends on the viewer. Personally I wouldn't want to watch a Zelda TAS where Link is invisible for any significant part of the game. You might feel differently. It's up to Tompa to decide, of course.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Honestly the only big thing I'm missing from a couple years back when I started watching the site is that it's pretty rare to get to watch a TAS of a game that a) I've played before, and b) hasn't been TASed yet (I think the most recent one for me that really qualified was the 2P Gunstar Super Heroes TAS). I imagine this is true for most people. Given how much more entertaining TASes are when you've played the game in question, it's easy to see that as the commonly-played games have all gotten TASes, the general entertainment level of the site has tailed off a bit.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Sir VG: in Firefox 3, you can just type "TAS" and you should get the right TASVideos URLs right at the top. TAS-down-enter is what I do to get where I'm going.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Those sound like good house rules. Another one I'm considering is allowing you to have multiple successes when trying to influence a state (so every die rolled can potentially influence the state's stance). I think that the original "you can only move a state's stance gradually" rule would make it too hard to influence things. I didn't specify stance or population distribution in the original rules, but I'd always internally assumed that they'd be accomplished by distribution of chits as in Settlers, as opposed to rolling. Random distribution can result in pointless games, like when the entire country is radicalized. I've greatly simplified the map from the original 50 states, to reduce housekeeping. Here's the map I'm working with right now (which looks horribly washed out on this computer; I should darken the regions some). That's 15 regions, which should still be enough to keep play interesting without getting the players bogged down in trying to figure out where their time is best spent. It should also help keep players interacting with each other as they "steal" votes. I'm aware that there are some topographical issues with that particular version of the map (Maine et al are hard to reach; Texas serves as a shortcut across the Great Plains), but I'll have to play some before I can figure out how much of an issue they are. For debates, I was thinking that you could try declaring a debate any time you're in the same state as another player (and since you can move before your action, this means debates are possible if you're adjacent at the start of your turn). I'm not certain I understand your debate process, but it sounds like it would require you to update stances for every state on the board, which I tried to avoid. I do like the idea of negative advertising that your opponent can try to counter, though, as it encourages players to interact with each other. Here's what I came up with for debates: A debate allows you to influence every stance a given state has, for free. However, you run the risk of accomplishing the opposite effect. Any time you are in the same state as another player, you may, as your action for your turn, challenge that player to a debate. If the player refuses, then you get to move 1 stance of the state 1 closer to your own stance. If they accept, though, then you compare your stances on the issues. In any issue where your stances are opposed (i.e. the state's stance is numerically between your stance and your opponent's stance), roll a d6, and subtract the difference between your stance and the state's stance. If your result is higher than your opponent's, then the state's stance moves 1 closer to your own; otherwise, it moves toward your opponent. For example, you wish to challenge your opponent in New York. Your stances are 3, 6, and 4 (in Red, White, and Blue, respectively), while New York's are 2, 5, and 2 and your opponent's are 1, 2, and 6. Because both of your stances on Blue are more conservative than New York's stance, you cannot debate on that issue; however, you can debate on Red and White. You roll a 3 for Red and a 5 for White, and subtract off your differences to get a 2 and a 4. Your opponent rolls a 4 and a 1, which are adjusted to 3 and -1. Your opponent rolled better than you on Red, but you rolled better on him in White, so New York's stances are adjusted to be 1, 6, and 2.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Cool. Are these actual new servers, or just new addresses for the same existing server? Also, URLs are case-insensitive; HtTp://TaSvIdEoS.org also works. :)
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Cool, thanks! I'm working on making a simple AJAX implementation; right now I just have a map of the USA divided into 15 regions, each of which you can click on; defining the imagemap for that was a royal pain, but once I get to the actual server-side details things should start moving pretty quickly, I hope. I definitely think there's lots of details that could be added -- negative advertising, as you mentioned, random global events, things like that.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
I agree with Dezbeast. Above all else, a run should be consistent; glaring new glitches should either be used regularly or not at all. But it doesn't sound worthwhile, entertainment-wise, to trade a second or so of walking for Link being invisible.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Gotta have an extended keyboard. I'm fond of Apple's because of the extra USB ports, but other than that I'm not really all that picky.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Post subject: Race for the White House (a game idea)
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
I had an idea for a board game while keeping an eye on the electoral maps yesterday, and whipped up the rules over the course of an hour or so. I've pasted them below, and welcome any thoughts you all might have. In this game, each player is campaigning for President of the USA. The goal is to get the most electoral votes -- since presumably you have more than two players, a majority isn't plausible. At the start of the game, you have a blank map of the USA, which is divided into states and media zones. Randomly lay down on each state a Population marker and three Stance markers -- these indicate how many electoral votes the state has, and the state's leanings on three key issues (the Red issue, the White issue, and the Blue issue, which you may decide correspond to actual real-life issues if you like). Yes, this means that Rhode Island might end up with a massive population. Population markers have a number (2 through 12), which indicates how many people the state has. Each state gets as many electoral votes as they have population. Each player then looks at the board, decides on their own stances on the three issues, and takes Stance markers to suit. The players start with $1 million each, in large bills. Stance markers have a color (red, white, or blue) and a number (1, 2, 3, 4, 5, 6). 1 is liberal, 6 is conservative, and 3-4 are moderate. These numbers indicate how the state is projected to vote in the election. By influencing state stances to align with your own stances, you can get more states to vote for you, thus improving your odds in the election. Play occurs over a series of six Months, each Month having 4 Weeks (i.e. turns). Players take turns in a clockwise order. At the end of each Month, the player to go first moves one step clockwise (so the player that went first now goes last, the player that went second goes first, etc.). At the end of the sixth Month, campaigning is finished and the winner is determined. In a given Week, players may: * Campaign in a state to solidify their position there * Raise funds in a state * Send advertisements out to their current media zone, to influence all states in that zone * Reinvent themselves Additionally, each week, the player can move to an adjacent state (before or after their normal action), and at the beginning of each Month each player can fly to any state in the country. For purposes of not being a dick, Hawaii is adjacent to all west-coast states and Alaska is adjacent to Washington. Campaigning in your current state Decide how much money (in increments of $100k) you want to spend. Then pick an issue to campaign on. Your goal is to roll a d6 and get numbers that are higher than the difference between your stance on the issue, and the state's stance on the issue. For every $100k you spend, you get to roll 1d6. If you succeed, then the state's stance on the issue is changed to be closer to your own. So for example, say you're campaigning in Iowa, which is slightly liberal on Red (2), heavily conservative on Blue (6), and heavily liberal on White (1). Your own stances are moderate (3) on Red, moderate (4) on Blue, and heavily conservative (6) on White. You decide that you want to change Iowa's stance on White, which is diametrically opposed to your own stance. Because the difference in your stances is 5 (6 for your own stance, 1 for Iowa's stance), you must roll a 6 to change their stance. You decide to spend $300k campaigning, so you roll three dice. You roll a 2, a 5, and a 6. Because the 6 is greater than 5, you get to change Iowa's stance on White, moving it closer to your own stance by 1. Iowa is now only slightly liberal on White. If instead you wanted to change Iowa's stance on Blue, then you only need to roll more than a 2, because Iowa's stance is 6 and yours is 4. If you spent $200k and rolled a 3 and a 6, you would still only move Iowa's stance once. Raise funds In order to raise funds, you should to be in a populous state that agrees with your stances. Here your goal is to roll highly on 3d6, but you take a penalty for every point that you differ from the state on stances. For the Iowa example above, your stance differs by 1 in Red, 2 in Blue, and 5 in White, for a total penalty of 8. You roll 3d6, and get a 3, a 5, and a 4, for a total of 12. Subtracting your penalty from that, you get 4. Say that Iowa has a population of 5. Now look at the following chart for your extra funds:
Population range	Funds multiplier (hundreds of thousands)
2-4	              .5
5-7	              1
8-10	             1.5
11,12            	2
In this case, Iowa's population of 5 puts it in the second population range, so you get 4*1 = $400k more funds. If Iowa's population had instead been 11, then you would have gotten 4*2 = $800k. Advertise Advertising is a way to influence several states at once. However, it is more expensive than straight campaigning, and you can only affect the three to six states in your current media zone. Like campaigning, you pick a stance and dedicate money, then roll dice; unlike campaigning, it costs you $200k per die roll, and you take a -2 penalty on your rolls. Note that this means it is impossible for an extremist candidate to influence opposed states: if your stance is 6 and the state's is 1 or 2, then because of the penalty you cannot possibly roll well enough to influence them. You only roll dice once for the entire media zone. For example, if you are in Iowa, your current media zone includes Iowa, Minnesota, Wisconsin, and Illinois. Your stance on Red is 3, while the states are 2, 3, 4, and 6 respectively. This means that to influence them, you must beat a 1, a 2, a 1, and a 3. You decide to dedicate $400k to your advertising, which gets you two die rolls; you roll a 1 and a 2. The 2 is enough to sway Iowa and Wisconsin; Minnesota already agrees with you, so they don't move. However, you were unable to change Illinois's stance, so it stays where it is. Reinvent yourself Sometimes the campaign is going badly, and you need to change your own stances. This is a costly maneuver to make, but it can help you make a comeback when the odds are against you. On your turn, declare you are reinventing yourself. You must turn in all of your current funds, as well as your current stance markers. On your next turn, you select new stance markers, and on the turn after that, you may resume normal play (though you still have no money). For example, say that the election is drawing near, and while you have a fairly solid standing in Blue, pretty much the entire country doesn't like your White stance, and you feel that you would be better off taking a more moderate stance in Red. On your turn, you declare that you are reinventing yourself, turn in your stance tokens and your money, and then end your turn. Next week, you choose your new stance markers -- you stay the same on Blue, but choose a totally different stance in White and move towards the center in Red, then end your turn. The week after that, you start campaigning again, secure in your new political position. The Election Once the last Month is complete, all campaigning is done. Now the votes are determined. Each state votes for to the candidate that most closely agrees with them on all three issues. Thus, for each state, compare the candidates' stances to the state's stance. Sum up the differences; the candidate with the fewest differences secures that state's electoral votes. The candidate with the most electoral votes is elected president, and wins. Let's look at Iowa again. Say we have three candidates, resulting in the following grid:
          Red White Blue Difference
Iowa		  2	1	6	
Clark	 	3	6	4	8
Rickard	  2	4	3	6
Shepherd 	5	2	6	4
In this case, Iowa likes Shepherd the best, so he gets Iowa's votes. Iowa's population of 5 means it has 5 electoral votes. Repeat this for each state to determine the winner of the game. And that's it. Aside from scoring, I think it's pretty playable, and I've been sketching out designs in my head for a way to make a a Javascript/JSON/MySQL implementation. Any thoughts?
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
I'll grant I haven't looked at the game, but if it's anything like most platforming TASes, most enemies can be skipped through clever gymnastics and/or taking damage, and bosses can be killed much faster than levels can be completed. That tends to mean that you get most of your speed gains by picking the character with the fastest ground speed. I'd say it's at least worth doing a rough run of the level with the fast character and comparing the time you get.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Couldn't you set the width/height of the table cells that contain the images, instead of the images themselves? IIRC if a table cell's contents are bigger than the cell, the cell expands to hold the contents.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
One of my classmates at college had an ancient optical mouse. It only worked on a special mousepad that had a grid etched into the surface.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
I use the Logitech "marble mouse" (really a trackball) at work, and a generic optical mouse at hope, both wired. The trackball's actually very nice for work; my only concern with taking it home is that I don't know how well it'll work for the 3D modeling I do as a hobby. But it has four buttons, one of which defaults to acting as a scroll toggle (i.e. as long as that button is held, the trackball scrolls the current window instead of moving the mouse). I woke up from a nap yesterday to find my hand shaped as if it were clutching my trackball, and I swear I could feel the thing, too. Not certain what to think about that...
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Point 3 is always PROFIT, but we're arguing on the internet, so it's clearly not relevant.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Can you not use the L/R walking when escorting the old man? Lame. Looks good, though!
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
The other side of the door is also underwater (there was a video linked a page or two back in the thread that shows what happens when you clip through the castle wall in that area). Edit: beat by bkDJ.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Kirkq: Well said. However, programmers should not be focusing on working alone. Yes, it's useful to be able to complete large projects on your own, but realistically, few projects are the work of a single person. Collaboration is key in this day and age for basically any significant project. Sadly, most college-level projects that I've seen aren't significant, and the classes where you are collaborating are designed to teach you about collaboration, not demonstrate its utility (in other words, you're handed a project you could do on your own but told to work with three other people on it instead).
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Apple in general is willing to make their cases more difficult to open if it means that the case as a whole looks nicer. They're big on presentation. The Mini happens to be notorious for this; TMK other Apple products aren't nearly as bad. That said, so long as it's possible to open the case and access components (even if it's tedious), I don't see upgradability as being a huge issue. How often do you need to upgrade your RAM or HD, anyway? Ultimately, you get a Mac if you're interested in OSX, because it's your only reasonable option.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
I wasn't saying that TASes wouldn't be accepted -- I was saying that that due to the relative paucity of TAS-worthy games (owing to increased length and complexity), you'd have trouble finding that emulator expert needed to upgrade a Gamecube emulator to be capable of making TASes.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Not only is the architecture entirely different; it's also another generation later; the Gamecube goes with the PS2 and X-Box generation, not the N64 and, uh, Saturn generation. More generally, even if emulators are made that work well for the console in question, there's still significant work that must be done to make emulators that are useful for TASing. Just look at all the work being done on PCSX to keep it from desyncing all the time. And that work is only worth doing if there's worthwhile TASes to be made, and to be frank, recent games keep getting longer and longer, which makes TASing them an unpalatable prospect. Even a comparatively simple game would take an hour to beat, and the average length for a TAS currently on the site is more in the 15-25 minute range (to pull a number out of nowhere).
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Post subject: Re: I need some help with a programming assignment
Experienced Forum User
Joined: 7/2/2007
Posts: 3960
Kyrsimys wrote:
Not everything is taught or even should be taught explicitly at school. In many cases the teacher's function is only to give the learners tools so that they can learn and find out about stuff by themselves. What does the student learn if he is simply given the solution that he then just copies and maybe adapts to his own assignment?
There's a difference between teaching as presenting facts to be memorized, and teaching as guiding the students to learn things on their own. The math classes I took in college were not just simply "here's a proof, now use it to complete these problems". The teacher started with something we knew, and then showed us consequences of that known thing, step by step, to achieve some other useful fact. And then we had to derive corollaries to show we understood the proof. In this particular case, the teacher should be discussing at a high level how threads work, what they do, what problems they can solve, and what problems they can create, and then leaving it to the students to demonstrate their understanding by implementing real-world programs that use threads. The problem is when the teacher says "Go implement this program using threads" and you're sitting there going "Threads? Buh?" Yes, it's possible for you to figure everything out on your own; the resources are all there in the library and on the Net. But then what value is the teacher providing?
Pyrel - an open-source rewrite of the Angband roguelike game in Python.