Those moments when you’re angry at your past self

I’m installing Arch Linux on my BeagleBone again. Everything’s going smoothly, and now I want to ditch the Ethernet cable. Unfortunately, when I plug in the adapter, its firmware and driver don’t get automatically loaded. I know I had this problem in the past, and I know that I found the solution. But I didn’t record what that solution was anywhere.

…Damnit, past Clay.

Advertisements

Ponies!

I used to dislike them.  Then I wanted to see exactly what I didn’t like.

…I’m a brony now.

Terrible Consequences

I drilled the mounting holes for the BeagleBone today.  I also completely forgot that there was felt in the bottom of the box, and drilled right through into the felt.  The consequences were not really what I’d consider terrible, but the felt did come unglued and wrap around the drill bit.  It’s needless to say that the particular hole I was drilling came out somewhat larger than the others after it.

Then I realized I didn’t know how I’d mark where the connector holes would go.  The connectors were right against the front of the box, but in the inside; I’d need to get them in the same position but on the outside.  Using my human ingenuity, I decided to use the BeagleBone as a stamp.  Yes, a stamp.  With an ink pad and everything.  Like a rubber stamp, except metal and plastic.  It worked fairly well, but the client USB connector wasn’t marking anything at all.  Then, at my mom’s suggestion, I tried stamping it with the paper on a mousepad, and that got excellent results.  I stamped it on tissue paper so it could be seen clearly from the other side, and I used that to help mark the locations of the holes on the box itself.

I then drilled center holes for all three connectors, and made the real hole for the power connector.  It being about 11:00 PM by then, I realized I should go to bed before I seriously messed something up.  Besides, I’m going to take the driving test tomorrow, and I want a good night’s sleep first.  After I get back from the test, I’ll get some pictures of the box on here before trying to finish the job.  In case you didn’t figure it out, I’m awfully excited about this little computer.

Entities

Anything that can change in Intelligence will be an entity. The static parts of a map are the quadtree, the changing parts are entities. The quadtree can influence entities (collisions, treadmill floors, etc.), but for the most part it’ll be passive. I have quadtree loading and drawing working fully already, so next I clearly need to work on entities. But they’ll be basically all of the game, so I’m not really sure where to begin on them. They’re…complicated.  They will have one or more functions governing their behavior (I might conceivably want more than one; for instance, one for player controls and one for physics), a position, a texture (which may be animated, and a behavior function will take care of animation), a size, and maybe some more properties I haven’t thought of yet. They’ll need to be able to give messages to the player through text, and run around on predetermined paths. I’ll need the possibility of multiple player characters which can be switched through while playing a level, and perhaps I’ll need to be able to have the level control one of those player characters while he’s not being controlled. It’s some complicated stuff, but I think I can manage it.

Basically, once it’s done, the main loop of the game will be incredibly simple. Just update every entity, draw the quadtree, draw every entity. Do this synced to the screen’s refresh rate, and you’ve got yourself a fully playable game. Obviously, the most important part is the entities, so I need to get started on them. I guess first I need to figure out what all they need in their main structure (which I basically figured out above), and then make that structure and some functions to work with instances of it. Then put one of those in the map structure, start making some simple behavior functions, and see how it goes from there. The ones for AI and such will definitely be the most interesting, and they’ll have to have some variables which can be controlled in the map files on disk. This probably doesn’t make sense to anyone but myself, but getting my thoughts written down definitely helps me organize them.

This has been quite helpful. I’ll try writing about tricky problems to help solve them more in the future.

Almost my birthday; what now?

Tomorrow is my 16th birthday.  I have to do a quiz on subject/verb agreement and run-on sentences (how sarcastically frightening).  There was a chance I’d get stuck at school for about four hours with nothing to do.  Apparently the transmission place didn’t bolt the engine in either car in place properly, but Dad fixed it all fancy-like.  I know some things I’ll be getting, or at least asked for, but a lot is still a mystery.  As far as I know, not much in the way of a party is going to happen at all.  Meh, I guess I don’t really want anything special to happen, really.  I don’t really like asking for things, or getting things without having to give things in return, or anything like that.  Is that weird?  I assume it isn’t totally abnormal, at least.  Oh well, I’ll try to do some coding now, then go to sleep.  I’ll have to type quietly, because I’d have hell to pay if I kept Dad awake with the clacking.  This thing clacks like hell even though it’s just a dinky little rubber dome keyboard.   I think most of the noise is caused by the keys being slightly loose, but a good part also comes from me hitting them really hard.  Man this has turned into a total ramble.  I guess it’s time to post without proofreading and hope for the best.

Homestuck

That’s really all there is to say on the matter.

Identi.ca is still down.

I’ve missed out on so many great potential dents.  I wonder what new features StatusNet 1.0 will give me.  They claim it should be back up tomorrow, and I hope they’re right.