Recent Forum Posts


    Basics Class 10: Basic Construct Programming

    Teacher: Solet
    Date: 4/26/2009

    <Solet> Tonight’s topic is going to be basic construct programming. That is, making your constructs do stuff, take on a particular shape color or function. To do this you need to have a vividly clear concept of what you’re trying to do.

    <Solet> There’s 3 phases do this:

    <Solet> 1. Creating the concept.

    <Solet> You’re going to start with a rough idea of what you want, then start refining the idea until you know EVERY last detail.

    <Solet> If it helps, use the visualization techniques Amaya taught you during the centering class or the visualization class.

    <Solet> Once you have the exact idea of what your construct is going to be, you’re ready for phase 2.

    <Solet> 2. The ‘engineering’ phase. This is where you work out the mechanics.

    <Solet> Learning how any moving parts will move. Learning the order of the tasks you’re going to make the construct do. And determining how much energy it’s going to take to do this.

    * Redregon raises hand

    <Solet> yes red?

    <Redregon> how do we determine how much energy it will likely need?

    <Solet> It’s something you’ll get a feel for over time. It’ll start out as guess work. If you over estimate, you’ll simply end up with left over, if you have not enough your construct will probably fall apart unless you add more.

    <Solet> Determining the amount of energy you need is really an aspect of precision (and laziness)

    <Solet> Once you’ve completed phases 1 and 2 you should know EXACTLY what your construct is and how it will function.

    <Solet> Phase 3: For the advanced, this is just simply rendering the construct. For beginners there are steps involved. I’ll be covering the steps :)

    <Solet> 3a: Make a blob of energy.

    <Solet> 3b: Start using your visualization to pull the energy into the design you made in phases 1 and 2

    <Solet> 3c: Continue 3b until complete. Should you run into problems it’s best to ‘freeze’ the construct, and look back at the designs you made in your head during the first 2 phases. Problems generally happen when you lose focus or didn’t have a clear enough idea to start out with.

    <Solet> 3d: Test your construct to make sure everything works. Not as big a deal for basic constructs like pyramids or cubes, but for a functioning jack in the box, or a pirate ship with functioning tackle and sail it’ll be more of an issue.

    <Solet> Should something not work, do a mini phase 1 and 2 on just that area, and fix the problem. Some more complicated constructs can take hours to complete, even for the advanced psion.

    <Solet> Phase 3e: CELEBRATE you just programmed your construct to do something!

    <Solet> Any questions so far?

    * Redregon raises hand

    <Solet> yes red?

    <vanshsgupta> raises hand.

    <Redregon> what if the construct that we’re programming is for things like combat. where if we test it, won’t it then attempt to attack the creator?

    <Solet> Then you’d make a test construct. have the second construct trigger the attack construct. That way the dummy construct gets hurt instead of you.

    <Solet> vanshsgupta. your question?

    <vanshsgupta> I can get the visualization and mechanics right off the bat. The trouble comes with giving it energy. It just begins to fall apart if I attempt to give it energy. How do I stop that?

    <Solet> you don’t give the visualization energy. It’s really the other way around. You give the programming to the energy. Energy is the container you’re working with, not your visualization.

    <Solet> Anyone else have questions?

    * Redregon raises hand

    <Solet> yes red?

    <Redregon> when it comes to programming, what are some that we should always include (I’ve heard some, I’d like to know what others there are) as in, things like “return” or “stop” or things like that

    <Nevyn> you mean base programming for all constructs?

    <Solet> depends on what you want

    <Redregon> what about longevity of the construct?

    <Solet> I generally have a “don’t die” and “only listen to me” on most of mine. longevity of constructs is for another night it’s trickier and requires a fair degree of finesse

    <Solet> Ok, next segment is going to be some practice. so everyone that’s going to participate ought go grab a snack and some OJ to keep handy. back in 4 minutes

    * break *

    <Solet> alright it’s been 4 minutes, can everyone who’s going to be practicing a long with the guided practice respond with “I am” so I know who I’m talking to

    * done *

    <Solet> Ok. For the beginners this is very important. Don’t do stuff with the constructs that I haven’t told you to do. Even if the next task seems obvious. You’ll end up wasting energy and possibly burning yourselves out. I don’t know how much each of you are capable of before burnout so I designed this guided practice to put as little strain as possible on you.

    <Solet> OK to start out we’re going to be making colored constructs, just normal balls, shape is unimportant, what we’re aiming for is a good vibrant color.

    <Solet> You guys will be on your own for this. we’re not going to watch each construct and help poke it in the right direction. Programming isn’t something we can or even should help with like that.

    <Solet> We’ll be reusing constructs. So to begin, everyone go ahead and make a construct with no programming and let me know when you’ve finished

    * done *

    <Solet> Ok. now begin going through the phases I explained earlier for making a bright red construct. shape is unimportant at this point. just make it REALLY REALLY red

    <Solet> let me know when you have an INSANELY OMG RED construct

    * done *

    <Solet> ok. now, for those of you who know me, you know I can be quirky at times. I want a green instead of red

    <Solet> don’t make a new construct. change the one you currently have

    * Redregon raises hand

    <Solet> yes red?

    <Redregon> is it abnormal that the construct would be stubborn? i.e. it started as red, but it did turn green… but it kept trying to go back to red a couple times

    <Solet> in your green programming, you also need to “de-red”

    <Solet> Next. Take your construct and make it yellow then blue. Don’t skip yellow, the object here is for practice with colors, and learning to change programming effectively on the fly

    <Solet> Now for some geometry fun. take your blue constructs and turn them into a cube. 6 sides, each square, each the same size. You may find that your construct might want a little more juice to accomplish this.

    <Solet> I want a pyramid, 4 sides, each are equilateral triangles each are the same size

    <Solet> Now. here’s a tricky step. Next I want a square based pyramid, 5 sides, top 4 walls are triangles sitting on a square base at the bottom

    <Solet> ok. now without breaking your square base pyramid, turn the whole thing purple

    <Solet> Ok, now for a more complex shape


    <Solet> this is a ziggurat, it’s a square base “stair-step” pyramid

    <Solet> all you’re doing is turning your pyramid into one of those, isn’t too difficult. but you’ll have to spend more time in phase 1 to get comfortable with the shape

    <Solet> it’s a series of squares each gets smaller as you go up. like a wedding cake. only square

    <Solet> now because I was VERY inspired by the picture Absolon found for me. I want my ziggurats to be yellow

    <Solet> like I said before. when you tell it yellow. you need to also tell it ‘unpurple’. if it helps. make it clear first then apply the new color

    <Solet> Rotate your yellow ziggurat clockwise about its base

    <Dwiibulon> rotate the part sitting on the base? or the entire thing?

    <Solet> no the whole thing

    <Solet> the trick here is that it should keep spinning. you shouldn’t have to keep spinning it

    <Solet> now while it is still rotating, slide it back and forth about 18 inches, keep it sliding back and forth between 2 points while rotating

    <Solet> now stop it in the center, still rotating, and make it move in a circular path clockwise with a 9 inch radius or approx 25 cm. Doesn’t have to be exact. just guess (if you really need a point of reference, a cd is 5 inches across

    <Solet> now while it’s still rotating and moving about a circle, have the radius decay slowly so that it spirals into the center of the circle, still spinning

    * done *

    <Solet> Now for this next step (yes it’s going to get more difficult) if you so wish you can stop your constructs spin. I want you to tell your construct to shoot another construct out of it (you’ll probably have to add more energy)

    <Solet> the construct it shoots out should be a small blue ball which should start swarming slowly around the ziggurat

    <Solet> if your programming starts to decay, do some maintenance work on it. get it back up to par

    <Solet> the ball should be blue, the ziggurat should be yellow. does everyone have a healthy yellow ziggurat and swarming blue construct?

    * done *

    <Solet> ok now same as the last step, only have it shoot out a red cube that swarms, keep the blue ball as well

    <Solet> in total you should have a yellow ziggurat, a red cube that swarms and a blue ball that swarms

    * done *

    <vanshsgupta> is it normal that they are continuously leaching energy?

    <Solet> Doesn’t matter really. as you get better you can learn to control that

    <Solet> now, without affecting the swarming pattern of the 2 smaller constructs (red and blue) I want you to make your ziggurat spin counter clockwise, at approximately half the speed as it was spinning the other direction before

    <Solet> ok. small break. be back in 7 minutes

    <Solet> I suggest you take your constructs with you so they don’t die

    * break *

    <Solet> yellow ziggurat spinning slowly counter clock wise with a small red cube and small blue sphere swarming

    <Solet> if they are having issues go ahead and fix them up. next step coming in about a minute

    <vanshsgupta> I have to touch it up again.

    <Redregon> it’s still spinning and spitting out shapes, but it seems like the older shapes that were spit out have either faded or something.

    <Solet> red: it was just supposed to spit out one of each. go ahead and stop it from spitting and get rid of all but one of each shape

    <Solet> Now that our constructs are healthy again, make the ziggurat (still spinning counter clockwise) slide back and forth as you did before, the swarming constructs should go with it, moving in the same relation to theziggurat as they did when it was stationary

    * done *

    <Solet> now stop the slide, and move it in a clockwise circle as we did before. this will be trickier this time because of the extra constructs, and because theziggurat is spinning counter clockwise while moving in a clockwise circle. you may have to spend a little extra time in phases 1 and 2 to get this to work right

    * done *

    <Solet> ok now same as before, slowly decay the radius so that it spirals into the center, still spinning. once its spinning stationary in the center with the 2 smaller constructs still swarming, go ahead and stop the spin

    <vanshsgupta> done. Although I do have the sneaking suspicion that these constructs are little more than a figment of my imagination. Is there a way to know that they are definitely there? I’m a little tired but that could easily happen due to overexertion of focus.

    <Solet> Ok now the last step. stop the swarming constructs, turn them into paint.

    <Solet> paint one side of the ziggurat with the red, and the opposite with the blue, note you’re not changing the color, you’re applying paint

    <Solet> should end up with a stationary ziggurat, with 2 yellow sides a blue side and a red side

    <Redregon> do splatters count? as in, not the whole side?

    <Solet> try to ‘roll’ it even

    <Solet> It’ll stretch if you tell it to

    <Redregon> ok

    <Solet> let me know when you guys are done

    * done *

    <Solet> alright. now go ahead and strip all the programming so you’re back to a boring blob of energy, and ground it out

    <Solet> And we’re done. Good job guys.

    <vanshsgupta> where does the color go? Mine refuses to go into energy. It’s like trying to chip off paint.

    <Solet> van use programming to “disrupt” all your other programming. tell it to stop being yellow, stop being red, stop being ziggurat etc

    <Redregon> if you know how to vamp, you could just suck it right back into you.

    <Solet> And while we’re not going to do it here tonight. for extra credit. you guys can work on making a functional trebuchet