You can move and shoot. All the fundamental stuff is in place. Mostly now I just have to polish all the details like scoring, turning into diamonds or uber-bots, difficulty curve, etc. Also, graphics need obvious fixing. Gotta add some audio. It's sounds like a lot, but they're all individually pretty easy. Also, I coded it really shittily on purpose, but it allowed me to get it going much more quickly.
I created a 3D grenade trajectory indicator for ArmA2 (because it's damn near impossible to throw grenades correctly in that game). The video shows an earlier version that's not as accurate as the current version.
After accepting my new side job a few weeks ago, I have finally met my previous shit-talk goal of writing 4 blog posts for MTV and 3 posts for Modern Day Pirates, all in the same week. Now to keep it up!
Follow up on my previous Non-Shit-Talk declaration:
Upon talking with a cute senior girl in our UAV program, I learned that my arduino should be able to directly drive regular hobby servos no problem. So yesterday I downloaded the servo library and wired up the steering servo in my car to my arduino via a half breadboard. Success! I could control the steering servo as easy as giving it the angle I want the wheel turned.
Next I tried hooking up the speed controller the same way, except without it being powered by the arduino (it draws power from the car's battery). So far I can only make it go backwards, but that's just a problem with the inputs I'm giving it. If I make a cable to connect outputs from the receiver to the arduino, I should be able to listen in via serial to what the transmitter is sending for the various throttle positions. ^_^
In the mean time, I've configured the breadboard to have both the ESC and the servo connected at once and I've come up with a sample drift program cobbled together with tweaked bits and pieces of various other programs. Once I put in the proper throttle settings, it should put the car in a drift and sustain it for a little bit. It'll need tweaking, of course, but I feel hope. ^_^
Code: #include <servo.h> Servo steering; // create servo object called "steering" to control the steering servo Servo throttle; int pos = 0; // variable to store the steering position void setup() { steering.attach(9); // tells the arduino that the object "steering" should be associated with digital pin 9 throttle.attach(8); // and the throttle to pin 8 } void loop() { steering.write(90); //Center the steering throttle.write(0); //arm the Electronic Speed Controller (ESC) delay(1000); //gonna waggle the front wheels a bit to test the steering int max = 5; int i = 0; for(i = 0; i < max;i++){ for(pos = 58; pos < 132; pos += 10) // goes from 58 degrees (full right) to 132 degrees (full left) { // in steps of 10 degree (fast) steering.write(pos); // writes the position to the servo delay(15); // waits 30ms for the servo to reach the position } for(pos = 132; pos>=58; pos-=10) // goes from 132 degrees to 58 degrees { steering.write(pos); // writes the position to the servo delay(15); // waits 30ms for the servo to reach the position } } delay(2000); //On your marks... steering.write(90); //get set... throttle.write(80); //GO! delay(10000); //build up speed before the flick for(pos = 58; pos < 132; pos += 10) // goes from 58 degrees (full right) to 132 degrees (full left) { // in steps of 10 degree (fast) throttle.write(0); //BRAKE! steering.write(pos); // writes the position to the servo delay(30); // waits 30ms for the servo to reach the position } for(pos = 132; pos>=58; pos-=10) // goes from 132 degrees to 58 degrees { steering.write(pos); // writes the position to the servo delay(30); // waits 30ms for the servo to reach the position throttle.write(80); //Power on! } delay(1000); //holds the steering at full right lock for one second int maxd = 5; int d = 0; for(d = 0; d < maxd;d++){ { steering.write(90); //Sets the steering position to center delay(10); // waits 10ms for the servo to reach the position } delay(1000); //holds the steering at center for 1 second { steering.write(58); // tell servo to go to position in variable 'pos' delay(30); // waits 15ms for the servo to reach the position } delay(500); } steering.write(90); throttle.write(0); delay(60000); //Now Sit. Good boy. }</servo.h>
Yeah I know, A protoshield would be great too, but between christmas shopping and the steam sale...teh monies, I don't haz them. ^_~ I will eventually get them and when I do... Watch out! Tiny servos for headlamp control and body height!
But before the tiny servos, I'm going to add an Xbee so I can control/debug it wirelessly.
I just can't wait to take it to a event sometime and confuse the ever loving FUCK out of all the other drivers.^_^
Huzzah! Progress! Last night and today, I made a GIANT leap in my progress!
I managed to figure out the control inputs for the ESC. Full reverse is 30, neutral is 90, and full forward is 170. The scale doesn't really make much sense (more precision going forwards than back), but I incorporated the new specs in my program, as well as some insights I learned taking the car out for a spin using the remote, and gave it a go today. As it stands right now, it drives like I did when I first tried driving it way back when. I'll have to take it to our engineering department at school where there is a nice level and smooth surface to test on, but not bad for three days worth of work, if I do say so myself.
Next step is getting a protoshield to tidy it up a bit and an xbee for remote debugging.
I am in the process of reviewing every movie in the Disney animated canon in a cheap publicity stunt on my blog. Currently, I'm trying to get a few movies ahead so I have some time in case I fall behind.
When you say "in the Disney animated canon," are you using the term "canon" colloquially? Or are you specifically excluding non-canon films such as Aladdin 2: The Return of Jafar?
When you say "in the Disney animated canon," are you using the term "canon" colloquially? Or are you specifically excluding non-canon films such as Aladdin 2: The Return of Jafar?
The Disney Animated Canon is also known as the "Disney Classics" and it only involves the numbered Disney films. So none of the straight to video sequels are part of the Disney Animated Canon. They are (for the most part unfortunately) part of the individual canon of the movies they are sequels to.
When you say "in the Disney animated canon," are you using the term "canon" colloquially? Or are you specifically excluding non-canon films such as Aladdin 2: The Return of Jafar?
The Disney Animated Canon is also known as the "Disney Classics" and it only involves the numbered Disney films. So none of the straight to video sequels are part of the Disney Animated Canon. They are (for the most part unfortunately) part of the individual canon of the movies they are sequels to.
Yeah, that's why I asked my question. When you said canon, did you mean Canon?
I'll move my updates here. Fleshed out unit panel, added infantry types. Input basic unit stats (placeholders really). Units also have a down arrow for their destination during movement.
I finally finished Mario & Luigi: Bowser's Inside Story after shit-talking to finish it many months ago. I turn it back on to figure out I was pretty much at the last encounter. -____-
Good game. I have enjoyed all the of the Mario & Luigi saga games, however Partners In Time is my favorite out of all of them.
Comments
http://geek-news.mtv.com/2010/10/29/play-this-not-that-an-intro-to-strategy-board-games/
You can move and shoot. All the fundamental stuff is in place. Mostly now I just have to polish all the details like scoring, turning into diamonds or uber-bots, difficulty curve, etc. Also, graphics need obvious fixing. Gotta add some audio. It's sounds like a lot, but they're all individually pretty easy. Also, I coded it really shittily on purpose, but it allowed me to get it going much more quickly.
The video shows an earlier version that's not as accurate as the current version.
Upon talking with a cute senior girl in our UAV program, I learned that my arduino should be able to directly drive regular hobby servos no problem. So yesterday I downloaded the servo library and wired up the steering servo in my car to my arduino via a half breadboard. Success! I could control the steering servo as easy as giving it the angle I want the wheel turned.
Next I tried hooking up the speed controller the same way, except without it being powered by the arduino (it draws power from the car's battery). So far I can only make it go backwards, but that's just a problem with the inputs I'm giving it. If I make a cable to connect outputs from the receiver to the arduino, I should be able to listen in via serial to what the transmitter is sending for the various throttle positions. ^_^
In the mean time, I've configured the breadboard to have both the ESC and the servo connected at once and I've come up with a sample drift program cobbled together with tweaked bits and pieces of various other programs. Once I put in the proper throttle settings, it should put the car in a drift and sustain it for a little bit. It'll need tweaking, of course, but I feel hope. ^_^
Code:
#include <servo.h>
Servo steering; // create servo object called "steering" to control the steering servo
Servo throttle;
int pos = 0; // variable to store the steering position
void setup()
{
steering.attach(9); // tells the arduino that the object "steering" should be associated with digital pin 9
throttle.attach(8); // and the throttle to pin 8
}
void loop()
{
steering.write(90); //Center the steering
throttle.write(0); //arm the Electronic Speed Controller (ESC)
delay(1000); //gonna waggle the front wheels a bit to test the steering
int max = 5;
int i = 0;
for(i = 0; i < max;i++){
for(pos = 58; pos < 132; pos += 10) // goes from 58 degrees (full right) to 132 degrees (full left)
{ // in steps of 10 degree (fast)
steering.write(pos); // writes the position to the servo
delay(15); // waits 30ms for the servo to reach the position
}
for(pos = 132; pos>=58; pos-=10) // goes from 132 degrees to 58 degrees
{
steering.write(pos); // writes the position to the servo
delay(15); // waits 30ms for the servo to reach the position
}
}
delay(2000); //On your marks...
steering.write(90); //get set...
throttle.write(80); //GO!
delay(10000); //build up speed before the flick
for(pos = 58; pos < 132; pos += 10) // goes from 58 degrees (full right) to 132 degrees (full left)
{ // in steps of 10 degree (fast)
throttle.write(0); //BRAKE!
steering.write(pos); // writes the position to the servo
delay(30); // waits 30ms for the servo to reach the position
}
for(pos = 132; pos>=58; pos-=10) // goes from 132 degrees to 58 degrees
{
steering.write(pos); // writes the position to the servo
delay(30); // waits 30ms for the servo to reach the position
throttle.write(80); //Power on!
}
delay(1000); //holds the steering at full right lock for one second
int maxd = 5;
int d = 0;
for(d = 0; d < maxd;d++){
{
steering.write(90); //Sets the steering position to center
delay(10); // waits 10ms for the servo to reach the position
}
delay(1000); //holds the steering at center for 1 second
{
steering.write(58); // tell servo to go to position in variable 'pos'
delay(30); // waits 15ms for the servo to reach the position
}
delay(500);
}
steering.write(90);
throttle.write(0);
delay(60000); //Now Sit. Good boy.
}</servo.h>
http://www.ladyada.net/make/mshield/
I will eventually get them and when I do... Watch out! Tiny servos for headlamp control and body height!
But before the tiny servos, I'm going to add an Xbee so I can control/debug it wirelessly.
I just can't wait to take it to a event sometime and confuse the ever loving FUCK out of all the other drivers.^_^
Last night and today, I made a GIANT leap in my progress!
I managed to figure out the control inputs for the ESC. Full reverse is 30, neutral is 90, and full forward is 170. The scale doesn't really make much sense (more precision going forwards than back), but I incorporated the new specs in my program, as well as some insights I learned taking the car out for a spin using the remote, and gave it a go today. As it stands right now, it drives like I did when I first tried driving it way back when. I'll have to take it to our engineering department at school where there is a nice level and smooth surface to test on, but not bad for three days worth of work, if I do say so myself.
Next step is getting a protoshield to tidy it up a bit and an xbee for remote debugging.
Cellphone camera video!
^_~
Good game. I have enjoyed all the of the Mario & Luigi saga games, however Partners In Time is my favorite out of all of them.