Learnt the wrong thing?

All development related reviews. Engines, Tutorials, books, ect.
Post Reply
User avatar
Callan S.
Posts: 2042
Joined: Sun Jan 24, 2010 5:43 am

Learnt the wrong thing?

Post by Callan S. »

I was thinking today that I've basically learnt how to build things (build code that outputs a construction).

And I wonder if I have learnt the wrong thing?

I wonder if I actually needed to learn how to affect people (using the medium of a program/game). Ie, not learning how to build a structure. The method of affecting comes first, then the means to do so through code.

I think I've been sort of building things, then trying to just take what I've built and try and jerry-rig to try and make it affect people. It kind of doesn't respect what was built, because it mashes up the built thing trying to affect people. Like using a wrench to bang in a nail. And it's just not terribly effective, as it was something built in order for something to be built.

I was just getting tired at coding and...I realised I was tired because I kept going to build up logic structures - and that has nothing to do with my objective as a game designer. Sure, you might say, you use the structures to then have something that affects people and...no. No really, it's alot of having structures simply so those structures just hold (don't bug out, that access info correctly, that don't have data manipulation errors, etc).

So all this structure building I've learnt.

But I haven't learnt how to affect people.

What keystrokes affect. And hey, a pianist has some idea of what keystrokes will affect an audience.

Imagine typing code like a pianist plays his keyboard - each keystroke isn't just a behind the scenes technical stuff that has no direct relation to art and affecting people. Instead imagine each keystroke being just as much affecting as a note played on a piano. Instead of, for example, getting all your terms in a mysql enquiry correct so as to access a DB correctly, what you're looking at is the long line, between every single key press, running all the way down and affecting another person.

I just don't think I've been coding that way. It's all about typing out structures that will hold up and...that's coding for the sake of structures that hold, it's not coding for the sake of affecting people.

I'm not even sure where to start, in trying to work directly with the goal of affecting, then going backwards through the processes and right back to the key involved.

I guess every language I've ever come across has been building-centric...and so that's what I learned.

I think I learnt the wrong thing.
Fight Cycle : My latest Browser game WIP
Driftwurld : My Browser Game WIP
Philosopher Gamer : My Blog
User avatar
Jackolantern
Posts: 10891
Joined: Wed Jul 01, 2009 11:00 pm

Re: Learnt the wrong thing?

Post by Jackolantern »

I am not quite sure if I understand. Programming requires tons of building just to support 1 mechanic visible to the user, so it is hard to compare it to playing the piano, where every key stroke is immediately part of the user-visible composition. How would you make each piece of the program affect the user?
The indelible lord of tl;dr
User avatar
Nihilant
Posts: 47
Joined: Wed Aug 31, 2011 8:24 pm

Re: Learnt the wrong thing?

Post by Nihilant »

Hm, the topic drove me to philosophical paradigms (that's my regular profession so no I'm not having strange associations here :P) and musical approach (my life-long hobby xD).

In a way I think I understand what you're saying, Callan. In music we have not only melodies/harmonies (musical 'bricks' to build a composition), but we also either try to send a message or get audience to feel/react in some way. Surely, in musical theory there are some general guidelines on what 'bricks' and 'technique' of combining them leads to what kind of reaction, so our construction of a composition should be tied to what we want to achieve on the end of audience. As it goes, sometimes we might be even more moved by composition played by amateurs - with all the simplicity and errors in presentation of the composition - than by the number played by the most precise and technically superb musicians. I guess your thoughts are going that way - what if we're only building our technical knowledge and skills, without giving enough thought and time to the desired effect (on the audience here, or on the user in the world of codes)?

If we talk philosophy, there are philosophical theories that deal with metaphysics (the Truth behind the world, what we don't get through senses but what is supporting the whole nature). In a way, the question might seem important (The Truth, The Real, The Fundamental) but the world is active and changing - a static explanations of The Truth (The Code! :D) cannot grasp the daily experience of living breathing human. Historically, philosophy moved thus to ethics and politics - talking about things that do affect us and the world around us. Coding is similar in my view: we can say our code is The Code (the clean, short, effective one), but I'd rather settle with the code (no capital C) that actually works in a way that's somehow 'visible' to user's senses - even if it's not so clean or short (etc.).

It seems simple: a hyperlink is just a hyperlink on the level of code. But a word that's hyperlinked but discernible from other text around it (some weird css choice maybe xD) isn't actually affecting the user since he/she won't use it - won't notice it or won't give it attention (since the link itself screams: "Hey! I'm not discernible, I'm probably useless!"). If we but a nice button that's different story. Add page's context and we have GUI above The Code.

Thus, it all falls down to what is the code used for. I'm lazy person - I want instant results, I start doing tutorials and after 10min I stop and say "damn I wanna DO things while I learn, not classify it all in my head and only then start coding!" so my first idea is always to ask myself these questions:
1. what do I want to achieve?
2. who will use this thing I'm coding?
3. how can I get users to do what I want them to do?
In other words, the 'affecting others' issue seems to me like the one that defines our coding work, and thus comes before it. Perfect code that's just sitting there is useless code. Perfect skills are useless if they don't change other people (at least in a way that directs them to do [or not] some things).

Oh damn, now that I've written something I feel like I didn't say anything useful or important lol
Anyway, yeah, the issue of affecting others vs. constructing code... We just have to code for the effect - not code for the perfection of the code itself.
User avatar
Callan S.
Posts: 2042
Joined: Sun Jan 24, 2010 5:43 am

Re: Learnt the wrong thing?

Post by Callan S. »

Jackolantern wrote:I am not quite sure if I understand. Programming requires tons of building just to support 1 mechanic visible to the user, so it is hard to compare it to playing the piano, where every key stroke is immediately part of the user-visible composition. How would you make each piece of the program affect the user?
I don't know, I never learnt that! lol!

I think initially probably leaning toward the literary more - more the content of an echo. Age of fable is like that and seems to have a nice bit of traffic (well, I think nice traffic. More traffic than I get :( ).

But then I don't know how to write literary to affect, either! lol!


Nihilant, you should probably check out the three pound brain blog. I'm a frequent poster there (same name as here). It also has a bunch of sites relating to philosophy on the blog roll. THAT place will curl your toes! The blind brain theory especially.
Fight Cycle : My latest Browser game WIP
Driftwurld : My Browser Game WIP
Philosopher Gamer : My Blog
User avatar
Jackolantern
Posts: 10891
Joined: Wed Jul 01, 2009 11:00 pm

Re: Learnt the wrong thing?

Post by Jackolantern »

To affect people through literature requires knowing what affects you and assuming the same will likely hold true for many others. Since we are talking about games and not novels or short stories, there is no shame in basically lifting the story line from a story you particularly enjoy and turning it into a game. Of course just don't use specific names or places, people or things. After a while of working with that, you may begin to create your own style and could take it further and create something from scratch :)
The indelible lord of tl;dr
User avatar
Callan S.
Posts: 2042
Joined: Sun Jan 24, 2010 5:43 am

Re: Learnt the wrong thing?

Post by Callan S. »

I'm not sure that to 'lift' a story does it. The affecting must be clear through every $_GET enabled choice, back to the keystroke. Rather than working on the structure of $_GET commands etc to work as a structure, then plugging story into that structure. Indeed, I've made attempts at that method already.

It's more "Why am I giving a choice at all? How does that impact them? What impact am I having with each key press as I type 'if (isset($_GET[...etc'?"

Certainly leaning on the literary more - but not just building more structures, then trying to pop that literature into it.

Literature, clearly, is static - it doesn't have choices built into it (except in ambiguous wording and description, granted). So I can't just use it, nor can I just continue to use structure/build structure for structures own sake then afterward cut and paste liturature into it. I'm just not into structure for structures sake - I really don't appreciate elegantly written code.

I'm not sure about what affects me - I think it might be more like a conversation. Saying things through the medium/the game that might provoke a responce from the other, that then affects me. Though I'm not sure writers do that - they can't hear their readers responces (except for the few that post on blogs (and that's just a modern thing) or write letters). Maybe that's a missplaced notion of mine, I dunno.
User avatar
MikuzA
Posts: 394
Joined: Thu Aug 08, 2013 8:57 am

Re: Learnt the wrong thing?

Post by MikuzA »

Yet again an old thread I stumbled into,

I kinda catch the idea what you are saying but slightly disagree in your perspective on it, or perhaps I don't understand it fully.
But perhaps I might be able to make a point referencing also used piano playing.

Game:
You remember Pacman? It's a simple game which makes sense almost immeaditly you start playing it.
Eat those dots and run away from ghosts.

Piano:
That's like a short catchy tune with piano, that doesn't tire you right away even thou you repeat it.

Game:
We decide to add huge dots to the edges, which will be able to turn the game around when eaten. I can eat the ghosts!

Piano:
Oh, now we have a verse 2 designed for this catchy tune, that goes on for awhile and then goes back to the original loop.

Game:
We add fruits which give you extra points!

Piano:
Instead of looping the original loop, let's change some of the notes from low to high and reverse.

Game:
Let's add passages to the sides of the map that you can use for shortcutting across map!

Piano:
Why not add some vocals to this tune!

Game:
Game stops if the ghosts touch you or you eat all the dots.

Piano:
This final ending tune should be repeated twice, just to give the people a feel that it ends and it ended.

Game over.
Piano song over.

Game:
Feeling 1: I died because of the ghosts killed me, I'll try again.
Feeling 2: I ate all the dots, oh, now it's level 2!

Piano:
Feeling 1: Perhaps I just change the way I play that or that tune.
Feeling 2: That's the song, perhaps I'll do another one with a saxophone in the background!


***

You dig? Simple game, simple music. Complicated game, Complicated music.

Usually simple music is 'easier' to make, since you can have a short and catchy tune, however it might be annoying on loop.
Same goes with games.

Complicated music,
yes you might try to make one, or even play one through.. doesn't mean that it might be a good experience.


So what I'm saying here is that,
When developing a game, user interaction is one of the key points of course.
Questioning yourself the questions you have exampled are a part of constructive developing.

Q: I gave a button, 'Attack', why am I giving them the option to attack this?
A: Because the player at this point is interacting with an hostile enemy, perhaps we should give them more buttons, like 'Run'.

Q: Why would I want to Run, when I can Attack?
A: That's your decision.


Perhaps, nowadays, players want to have as much decision making possibilites when they play. MMORPG are just so famous because it's usually developed in a way that will allow people to do whatever they want to do, not entirely but they are not all playing the same straight forward storyline.

Main point is that Medieval time MMORPG gives the main choice to players, what kind of charachter they want to play. Warrior? Wizard? Ranger? etc.
This already sort of categorises people in what they like in gaming.

Some people just hate playing mage, since people thinks they are sissies and standing far from the heat of battle.
Some people dislike playing mage due they want to be the star of the show and usually the most tanky hero is the start.
Some people prefer not to play mage due it's just plain difficult.
Some people play mage just because someone else told them to do so.
Some people like to play mage due it's usually ranged and supportive charachter.
Some people love to play mage just because it's mysterious and powerful.

Some people like stability, where an warrior with meele attacking goes quite well.
Some people like to be awesome later, where an wizard usually comes in with it's ancient magics, outbeats everyone else with one spell.
Some people like to have advancement early game, where an ranger with similiar damage output as warrior but from an distance.

But you see here, everything is determined on what options the game itself gives for the player to choose from.
You I would say that you have not learned the wrong things, I would just say you are asking yourself the wrong questions.

:oops:
Why so serious?

Business Intelligence, Data Engineering, Data Mining
PHP, HTML, JavaScript, Bash/KornShell, Python, C#, PL/SQL
MySQL, DB2, Oracle, Snowflake
Pentaho, DataStage, Matillion, Unity3D, Blender
User avatar
hallsofvallhalla
Site Admin
Posts: 12023
Joined: Wed Apr 22, 2009 11:29 pm

Re: Learnt the wrong thing?

Post by hallsofvallhalla »

Guess I missed this post but I like it. The link is the perfect example. We are trained to code a link and it is pretty much the same code no matter what. But it's the place that it takes us that affects us. A link that takes us to a porn site would affect us differently then a link that takes us to a site full of ads and spam. Instead of making the link flashy and easy on the user make the place that link takes us what affects the user. No imagine it on a much larger scale.
User avatar
Callan S.
Posts: 2042
Joined: Sun Jan 24, 2010 5:43 am

Re: Learnt the wrong thing?

Post by Callan S. »

MikuzA, but why are you making things more complicated - this is indeed the thing I haven't learned. I cannot just do that - I can't just make things more complicated. For me, I have to know why.

I've been thinking lately, even beyond affecting the user, that what might be missing is the capacity for the user to use the program to make art. I've focused very much on chess like gameplay. Yet I do alot of table top roleplay and I'd readily admit some of that (if not alot of that), including in what the players do, is to create art at the table (I'm not talking pretentious levels of art - even a funny joke is a kind of art). In haven and hearth I went past someones house who's lawns were laid out in a particular way (and come to think of it the lord of the rings mmorpg and runes of magic let you lay out your house and lawns to an extent as well). Never mind how minecraft took off, when most of the creations aren't practical but instead aesthetic.

So that's the direction I'm thinking in these days. Though chess like gameplay (or atleast gamble based gameplay) is still very important to me. But a side order of player created art is cool too.
User avatar
MikuzA
Posts: 394
Joined: Thu Aug 08, 2013 8:57 am

Re: Learnt the wrong thing?

Post by MikuzA »

Complication is required in order to touch different kind of people and their likings.
Everything else can be simple, as long as the pathways are open to everyone.
And that is never simple.
Why so serious?

Business Intelligence, Data Engineering, Data Mining
PHP, HTML, JavaScript, Bash/KornShell, Python, C#, PL/SQL
MySQL, DB2, Oracle, Snowflake
Pentaho, DataStage, Matillion, Unity3D, Blender
Post Reply

Return to “Development Related”