Posts for gbagcn

Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok I figured out what I was doing wrong. That 40 bit file that I was making would only be able to store the color and location of a single pixel. Since images are made up of multiple pixels this isn't enough space to store an entire image. Also the location of a pixel isn't even important since you can just line them up next to each other. First you read 24 bits and then you apply them to a single pixel. Then you read the next 24 bits and apply them to the next pixel. You repeat this process 65536 times so thats why you multiply 65536 x 24 = 1572864 bits. Now there are still a few things I am not completely sure of that I haven't mentioned yet. If you wanted to find the total number of possible images you could generate (256x256, 24 bits per pixel) you would take 16777216^65536 right. You could also find it by taking 2^1572864. When I calculated these both of them resulted in a 473480 digit number that looked like it was equal so I think 16777216^65536 = 2^1572864. I am pretty sure you can label it as 473480 bits. If you square this number you get 224183310400 and I think that number represents the number of bits that every single 256x256, 24 bit picture would take up (every possible state of the image, with a new image file for each new state).
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Yeah mmbossman thats what I was thinking when I made this topic. When you have the program load a game you just specify what emulator it is for and then the game starts like normal. I don't think something like this should be too hard to code since all your doing is changing the GUI for a few emulators to make them compatable.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
So why are you allowed to reduce some numbers to bits and not others? You are allowed to reduce 16777216 colors to 24 bits so what is wrong with reducing 65536 to 16 bits? Since there are 65536 states in a set of 16 bits and a 256x256 image has 65536 pixels, you should be able to make it so each bit state represents the location of a single pixel. Your probably right about not being able to multiply them though. What if you added them together instead. That would make 40 bits (24+16) but that number seems way too low.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Yeah I wouldn't be surprised if the developers got the idea for this game by watching the bigame Megaman TAS. There are only a few games that use the same input to control 2 characters and the bigame Megaman TAS is probably more popular than all of them.
Post subject: An emulator the emulates more than one game system
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Instead of having one emulator for each system what if you combined the code of bunch of emulators together to make one emulator (with some modifications to make them compatable). I am not sure how difficult this would be but it should be possible. This should make developing new tools for emulators easier since you only have to modify the source code of one emulator instead of multiple ones when designing the tool. I have a feeling there might be some other advantages to this idea as well.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
I think I know how to cube it. Since the state space/possible values of bits can be represented as 2^(bits) what if for this problem you changed it to 2^(bits)^3 and then plug in 1536 to get 2^1536^3 = x. Since x had over 10^22 digits in it I am not going to post it all here but go see for for yourself by plugging the values into http://www.std.com/~reinhold/BigNumCalc.html. If you take the (log2)x = 4608 and this represents the number of bits (probably wrong about this but don't know why). Nitrodon I think I could do the same thing for the numbers you came up with as well. Convert 65536 to 16 bits and then take 24 bits x 16 bits = 384 bits^2. Now if you did the same thing as above you would get 2^384^2 = x (which is another really big number). Now take (log2)x = 768. Once again I probably messed up somewhere but I don't know where.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok so since 16777216 colors can be held in 24 bits does that means you could also hold 256 in 8 bits. The purpose of reducing 256 to 8 would be to make the units the same for all 3 numbers. Of course I know doing something like 8 bits x 8 bits x 24 bits = 1536 bits would probably be wrong since you already told me the right numbers to use. I don't know why it would be wrong though because using the same units for all 3 numbers makes more sense.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok I guess that sort of makes sense but there is still one thing bothering me. Since pixels can display so many different colors and bit depth is related to the number of colors the pixel can display why is the bit depth number so small? If you took the hexadecimal number FFFFFF and converted it into base 10 it would be 16777216. Shouldn't this number have some sort of meaning? For one thing it is much larger than the number 256.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok let me try this again. I am going to post what I think a bit sequence for a 256x256 image with 16 bits per pixel looks like. This bit sequence excludes the header data. The letter n represents 0 or 1. Ignore the -'s since they are just being used for spacing. 1.----------------2.--------------3a.-----3b.-----3c. nnnn-nnnn----nnnn-nnnn----nnnnn-nnnnn-nnnnnn 1. This part of the bit sequence is the length of the image. Since this bit sequence has 256 possible values then it should be able to represent the length. 2. This part of the bit sequence is the width of the image. Since this bit sequence has 256 possible values then it should be able to represent the width. 3. This part of the bit sequence is the bits per pixel of the image. Since the bits per pixel of the image is 16 I used 16 binary digits. I further divided this bit sequence to represent the intensity of red, blue, and green light. 3a represents the intensity of red light, 3b represents the intesity of blue light, and 3c represents the intensity of green light. Since the number of binary digits (count up the number of n's above) in this image is 32 (2^32=4294967296) and the number 4294967296 (this number must represent the number of bits right because 32 is too small of a number to represent them) seems too large for such a small resolution image I think I might be doing something wrong.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
What do you mean by header data? I have never heard that term before. How would you factor in header data to that formula? Boco I am not sure if you answer is accurate or not because I have never heard the term "possible values" to refer to a bit sequence (except maybe in this topic).
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok I think I messed up my explanation of what 2^X = Y actually means. X represents the number of numbers in the bit sequence (in base 10 this is known as the number of digits in a number) and Y represents the number of bits in the bit sequence. For example in the bit sequence nnnn (where n is either 0 or 1) X = 4 and Y = 16. Also the lowest possible value of this bit sequence is 0000 while the highest possible value is 1111. This is similar to base 10 4 digit numbers where the lowest value of them is 0000 (0's to the left of the first 0 are usually ignored) and the highest value is 9999. So regarding the image stuff that means that you could use the following formula to find the file size for an image: Image resolution x bits per pixel = image file size (bits) 800 x 600 x 32 = 15360000 This is what I thought before I created this topic but I must have explained it wrong or something.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
First of all before I go any further I want to make sure I am understanding the concept of a bit right. For example the bit stream 1001 can be written in terms of 2^X = Y (in this example x = 4 and y = 16). The way I refer to X and Y (when thinking about it myself, not to other people) not is that X represents the number of bits while Y represents the state space of those bits. Since I have seen the word "bits" used to refer to both X and Y I am not sure which one is supposed to be refered to as a bit. Each pixel is made up of the RGB color model so since there are 3 variables in this color model (red, green, blue) I took the number of bits per pixel and multiplied this number by itself 3 times (in other words cubed it). For example in an image with 16 bits per pixel you would have 16 bits for red x 16 bits for green x 16 bits for blue. The reason you need 16 bits for each color is because you need to represent the level of intensity of red, green, and blue. For example the lowest intensity would be 0000 while the highest intensity would be 1111.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
So you take the bits per pixel number a cube it right. That means if you wanted to find the file size of an image in terms of bits you would do that following right: Image resolution x (bits per pixel)^3 = image file size (bits) 800x600 x 32^3 = 15728640000 So am I doing this right? Also I know this is only what the file size would be uncompressed. Is there a way to make this formula more accurate by factoring in some basic compression without being too complex?
Post subject: What percentage of TAS watchers have seen exactly one TAS
Experienced Forum User
Joined: 5/30/2005
Posts: 98
...and what percentage of these people actually know what a TAS is? Obviously there is no way to know these numbers for sure but what is your best guess? Also I am defining "TAS watcher" as anyone who has ever watched a TAS regardless of if they knew it was one or not. My best guess is 1 percent of all TAS watchers have seen exactly 1 TAS and out of these people over half of them don't know what a TAS is. Also I am guessing the reason for this is because no matter how much you try to inform someone of what a TAS is over the internet some people won't recieve this information no matter what you do. The people most likely to not get this information are the people who have never seen a TAS or only seen one.
Post subject: Am I understanding the concept of bits per pixel right
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Bits per pixel means the number of colors an indivisual pixel in an image can display right? So for example if you look up an images properties and see it has 32 bits per pixel that means that each pixel can display 32 different colors right.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Well its good to know this AI would be less complicated than checkers especially since checkers has been solved recently. Is there any game that has been studied extensively that you could compare pokemons complexity to. LagDotCom what your describing is a very complicated type of switching strategy. I want to start with the simplest strategies first and then move on to the more complex ones. Also alot of the other stuff you described applies more to human created teams than randomly generated ones. AKA thats an interesting idea. If I wanted to simplify this AI I could just wait for the opponent to make a move first and then give that information to the AI. The problem with this is it kind of feels like the AI is cheating since when humans are battling they don't get access to this type of information. Also if the AI decided to battle itself as soon as the match started the AI would endlessly wait for the other AI to make a move since they are both programed to go second.
Post subject: Designing an AI program to battle with random pokemon
Experienced Forum User
Joined: 5/30/2005
Posts: 98
I always liked playing challenge cup battles in netbattle so I thought it might be interesting to design an AI that can play them as well. Since I don't have much programming experience I am not actually going to make this program. I am just laying the framework so if I ever learn more about programing or someone else wants to help me they can make this AI more easily. The first thing to look at when you start a battle is your options per turn. You can either choose 1 of 4 moves or switch to 1 of 5 pokemon. This gives you 9 moves total. As your pokemon faint the number of moves you have decrease since you can't switch to a fainted pokemon. When choosing a move the most obvious choice is to choose the move that does the most damage. Sometimes that isn't always the best option though. The AI would need some way to recognize when it is the best option and when it isn't but I am not sure how it would do this. When deciding to switch the AI would have to carefully analyze the enemy pokemon. It would have to look at all of the moves the pokemon had and figure out what the probability of it having each one is. In challenge cup a pokemon is more likely to have moves that do damage compared to moves that don't do damage since each challenge cup pokemon is required to have at least one of these types of moves. Then based on this information it would calculate the percent chance it would recieve 1 percent damage, 2 percent, 3 percent, etc. If the percent chance it would recieve over 33 percent damage was very high the pokemon would probably be better off switching. Then it would switch to a pokemon who would most likely recieve a low amount of damage. For example say the AI had a water type out and the opponent switched to an electric type. Since the opponent switched to an electric type it probably also has an electric move and there are a bunch of electric moves in its move pool. Because of this the AI would switch to a ground type. I don't really think I can come up with much more and the amount of information I have came up with so far isn't anywhere near enough to build a good AI. I think the difficulty of making this AI will fall somewhere between the difficulty of designing a checkers AI and the difficulty designing a chess AI. The most difficult part is probably going to be figuring out when it switch.
Post subject: Things a human can do would be impossible for a TAS bot
Experienced Forum User
Joined: 5/30/2005
Posts: 98
When describing the process that a human can do but not a TAS bot try to be as specific as possible. Also if someone did somehow manage to build a TAS bot that did this thing you called "impossible" compare how difficult it would to be to program compared to current TAS bots.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Ok I think I figured out how to measure the information transfered when you give one recipe to another person. According to wikipedia a recipe consists of the following components: The name (and often the locale or provenance) of the dish, How much time it will take to prepare the dish The required ingredients along with their quantities or proportions Equipment and environment needed to prepare the dish An ordered list of preparation steps The number of servings that the recipe will provide I don't really think the top and bottom instructions are that relevant to following a recipe so lets focus on the middle 4. Now we need to figure out the maximum total state space of each of those 4 components. The first component is how much time it will take to prepare the dish. Now lets assume the lowest amount of time for this is one min. Lets assume the highest amount of time it could take would be 32 mins. This information could easily be stored in 32 bits in a computer so I think thats a good way to measure the state space of this first component. Now the second component is the number of ingredients. I can't really see a recipe having more than 16 ingredients so lets store the number of ingredients in 16 bits. Now we come to the total number of ingredients possible that could be used in a recipe. I really have no idea what to set this number at but I think I will set it at 1024 bits. Now for the types of equipment. Once again don't know what to set this at so I will set it at 1024. I don't really think the environment will have much of an effect on a dish so lets set that at 8 bits. Now for the the last component. I don't know what to set this at so I will just set it at 1024 again. Now I think you multiply these bits together and you get the total number of bits (also know as the amount of information in the recipe) the recipe takes up. I hope I did this right.
Post subject: I just found a TAS of this really hard SMW hack
Post subject: The Tenth dimension
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Yeah xebra I found that section interesting too.
Post subject: How people act on the internet vs how they act IRL
Experienced Forum User
Joined: 5/30/2005
Posts: 98
http://www.rider.edu/~suler/psycyber/psycyber.html Until I found this link I wasn't aware there was so much information available about this.
Experienced Forum User
Joined: 5/30/2005
Posts: 98
Maybe you could make the focus of your site on TAS that start from a savestate or SRM. I am pretty sure movies like this will never be hosted here so it would be nice to have a site that would host them. This would be good for games without alot of unlockable content (where the unlockable content is good but the process of unlocking it is boring) or if you only felt like making a TAS of part of the game. Another idea is maybe you could have a section for movies where you speedruned them like normal but you are allowed to make a certain number (as opposed to an infinate number that this site allows) of savestates while making the run.
Post subject: Wow the future of AI sure looks interesting
Experienced Forum User
Joined: 5/30/2005
Posts: 98