Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - ollj

#1
cinematic platformers suffer from
- timing puzzles
- 3d platforming (poorly estimating speed and distance)
- silent protagonist, setting is a big part of the narrative, environmental narrative of a 4510-genre
- cinematography focus (often just distracts from interactivity)
- hard resets from fail states

adventure games suffer from
- occlusion in 3d space
- slow pacing
- repetitive dialog
#2
[indiana Jones fate of atlantis] has 3 branching paths with different puzzles , sharing the same journey trough the same locales.
one path is a brute, action focused, almost Machiavellian/exploitative
one path is smart, but alone, mentally challenging.
one path is social, as a duo, with more dialog puzzles.
the paths are only separate/parallel during act 2 and act 3. and converge to the same finale.

I think a better approach to this is done by adventure games that change the player character, either over time, or over locales.
maniac mansion games are great examples here.
#3
Games with "shandified meandering narrative" more likely are tearjerking, if only because they delay the conclusion of an obscured/fragmented tragedy.

"meandering narrative" initially seems to be multiple barely connected elements, of a first act that makes up 70% of the narrative, with more mystery than conflict, showing a lot of apparently disconnected events, where you just wonder about a least common causal chain, that seems to be there, but hidden.

It still follows a 3 act structure story circle, but it is likely temporally discontinuous, locally discontinuious, "meandering a very curved path" in rambling tangents, and apparently more abstract. Its easy to tell a story in reverse (frontloaded tragedy/death), meeting at the middle (the missing central connection), or moving out from the middle "mirror moment" (train-wreck in slow motion)
The 3rd act is often just the last 10% , but it sure avoids a nonsensical plot twist or lack of resolve (like the Lost-series)

To The Moon
Finding Paradise
Edna And Harvey The Breakout
Obra Dinn
https://www.youtube.com/watch?v=wvwlt4FqmS0
#4
It seems to be a narrative pacing issue, and not a context/hardware issue.
Because [the room] (game) nicely does adventure-game like 2d shifting puzzles, with a mobile-hardware UI (touchscreen and accellerometer).

it may be a narrative issue, except that people do read a lot of novels and comics while commuting, that may as well be an interactive narrative.

The adventure game nearly committed suicide, mostly by insisting to switch from 2d to 3d, which just ends up obscuring/occluding puzzle assets or p
paths/portals to locales or story elements.
Minor other issues are bad contexts, too many degrees of seperation, or dragging on for too long (Toonstruck and BrokenAge just get worse over time)

That is really all there seems to be left to it, just keep it in 2d, to not occlude or obfuscate or distract from a clear story. and you may end up like Daedalic, reviving a genre that ridiculed itself into its "hidden object game" evil-twin-genre, after murdering its 3d-adgenture-game-child.

Games tend to be faster paced , or at least be more easily split into 20 minute sessions
- you can nicely see how [UnAvowed] can be split into <30 minute segments (pseudo chapters), that swap locales and puzzle-contexts in that interval
, so you can take short breaks every 30 minutes, and theoretically play the game on a mobile device while commuting in daily public transport.

Some adventure games may benefit from faster pacing, more rapid cuts like a music video, more like a warioware puzzle game, and less like a 3 hour epic movie.
#5
Temporal continuity is one of the smaller problems of the RotN collaboration.
Its a prime example of "(everything but the) kitchen sink design", for the fun of it, it runs wild with

https://tvtropes.org/pmwiki/pmwiki.php/Main/KitchenSinkIncluded
"stylistic pastiche, a conceptual collage, and in other words, a mess."
https://www.youtube.com/watch?v=QrGrOK8oZG8
which is fun, but not good/consistent story/game-design.

This can be contextualited into a serial form with some continuity, but that did not happen with RotN:
https://www.youtube.com/watch?v=fSfKusgaEDU
https://www.youtube.com/watch?v=crkbf3a1PnQ
https://www.youtube.com/watch?v=VM5IVK9yJ_k&list=PLl0oTb1DRlDL8ILSvQU0zPONp9nycZryQ
https://www.youtube.com/watch?v=A1W9CgxZd5Q&t=22s
#6
there exist 2 huge midi collections online
one is 50k midis from geocities, 90s homepage midis, immortalized as torrent collection
another one is
https://www.reddit.com/r/WeAreTheMusicMakers/comments/3ajwe4/the_largest_midi_collection_on_the_internet/

so, are you brave enough to search though those?

or just use a mobile phone app that does fourier-analysis matching of your hummed melody to a database of labels.
#7
a lot of melody/music is extremely memetic "referencing tracks", overused, resampled, contextualized, reassociated, reapropriated, comemrcialized
, but predates the concept of memetics or fads, to a point where the same melody goes by 4 different nouns and 10 different interpreters

over a time span of 50+ years, with tempo/style changes from NurseryRhime to singAlong to Lullaby/ballad to Folklore to Rag to to Jive to Jazz to RockNRoll to rap, with very constant melody/chord/rythms
https://www.youtube.com/watch?v=OGM7PsXGkgg
https://www.youtube.com/watch?v=5SaFTm2bcac
https://en.wikipedia.org/wiki/Carnival_of_Venice_(song)
https://en.wikipedia.org/wiki/Ten_Green_Bottles

one master of summing up a lot of those is
https://www.youtube.com/watch?v=hl0Ewjo5guU&t=89s
https://www.youtube.com/channel/UCfj7rOunAq7PopmqinGquLw

and then movies/plays/attractions get renamed after a musical score (Its a small world after all)
Or musical tracks get almost officially renamed after the movies or trailers they are used in (Lux Aeterna)
Because these art forms coexist and pay homages, all during ones lifetime, and you can trace label-changes trough wikipedia edits, of a rose by any other name.
#8
https://www.youtube.com/user/thugnotes
tackles noninteractive media with philosopical emythology
https://www.youtube.com/user/ExtraCreditz
tackles interactive media often more philosophically literate
#9
games that rely on more realistic visuals (cutscenes) tend to age poorly
, because comuter generated cisuals are inherently surreal, at best uncanny when they dare to appear realistic.

They sure are great and novel for at least 6 months, but visual methods (hardware) develop rapidly, and the visuals of games very likely age poorly, get old VERY fast, like a good old joke, that just gets repeated too often:

this includes prime examples:
Loom
https://youtu.be/z1aVDael-KM?t=1680
Agony (amiga)
https://www.youtube.com/watch?v=WYxIJxqrv6U
Shadow The Beast (1,2,3)
https://www.youtube.com/watch?v=RqW5O4AR2Oc
Settlers
https://www.youtube.com/watch?v=A00dztBHZ44
Worms
https://www.youtube.com/watch?v=4ckbNvrM83A
Warcraft2
https://www.youtube.com/watch?v=ZU-n8UZM5Cc
all did good famous novel and expensive visual things, but that all did not age too well, mostly because they use surreal methods to estimate realistic visuals.

a better approach is a visual style that dares to be:
- abstract/minimalistic/clean
- causal/consistent/stylish
- narrative/gameplay focussed
- focused on practical effects, rather than greenscreen/CG.

prime example is
Star Control 2
https://www.youtube.com/watch?v=5UuZyhg-e1M


If you insist on realism, step away from CG, it is inherently surreal:
Jurassic Park 1 only had 6 minutes of CG in total
, where many scenes had stop-motion reproduction to set up the lighting and angles of a scene:
https://www.youtube.com/watch?v=c1IaR4RCZ2I
which is why it visually aged a bit better than other CG / JP-movies.
#10
Loom pioneered dithering (in an era were most hardware could still only manage a palette of 8 or 16 colors in 1990)
, Obra Dinn perfected dithering (just because of a dare to constrain to monochrome >= 800x600 in 2018)

This game sure knows its hashing, noises and bayer matrices, as it mixes at least 3 different hash functions for monochrome dithering, often in the same view, to use the right "color of noise" in the right context: https://en.wikipedia.org/wiki/Colors_of_noise

You don't have to care for its story or gameplay, the style itself, and the applied dithering routines, are interesting enough on their own.
#11
any node-graph editor?

but when you need complex tools, you likely miss on a "keep core gameplay simple" framework.
#12
I think an extreme example of "Staircase to nowhere" is one [hinting system in monkey island 2] that is hidden behind an absurdly long dialog tree of color names.

Spoiler
Spoiler

https://www.youtube.com/watch?v=zqsmEHrOklE
is clearly satire against:
https://www.youtube.com/watch?v=HmStJQzclHc

guybrush "could you teach me some philosophy"
herman toothrot "okay here is a zen-koan for you"
guybrush "what?"
herman toothrot "a philosophical puzzle, if a tree falls in a forest an no ones is around to hear it, what color is the tree."

guybrush has a very long dialog tree of color names, a lot of them are X11-CSS-color labels of
https://en.wikipedia.org/wiki/X11_color_names
(thouch "rebecca purple" is left out, and likely replaced by "Deep purple")

(listed below are only (the slightly more creative/unique) and not (common) x11-colors that guybruah can guess):
ForestGreen
Lavender
Puse
Taupe
BurntSienna
RawUmber
Sepia
Mulberry
Perriwinkle
Orchid
Plum 
peach
Aubergine
Teal
Mustard
Cabernet
Slate
Smoke
Brick
Chartreuse
Cherry
Wisteria
Raspberry
Vanilla
Asparagus
Cranberry
Sangria
Eggshell
Driftwood
Sumac
Alpaca
StormGrey
EveningHaze
Tarragon
Sachet
Venetian
Juniper
Drizzle
SweetPotato
Bayou
Manilla (not a typo)
Mackintosh Red (is a monkey island color)
Mange
Sharkbite
SashimiGreen
Ebony
Ivory
Menthol
Sahara
Salmon
Oxblood
Robin'sEgg
Ash
Spice
Copper
WeatheredPewter
Vernillion
MetallicBurgundy
Russet
CadmiumWhite
Cerulean
TealocyanideGreen
ochre
Deep purple
beryl
OatmealHeather
AllColors
[close]
[close]

you have to collect 3 crackers, but most of the locale is a noneuclidean-teleporting maze?
you likely are missing the last 1/3 crackers.
Herman Toothrot is a philosopher and the only other human in your locale, mostly appears to be a waste of time and red herring
, and all you can talk to him for a while is a guessing game about a color name, from a list of almost 100 color names, on philosophy.
Each color name can only be guessed once, they are all false.
after exhausting trough the long list of responses, the NPC-is-out-of-dialog-options is actually an almost useful hint on how to progress.
#13
good summarizing categorization.

Sadly many of these can be condensed to "fetch quest", asserting that even a meme like "open sesame" is a spell-entity that can be found and transported.

Fetch quests are not what makes fetch quests a bad trope. the general badness of puzzles comes from out-of-context diegesis (when the UI is separated too far from the story/gameplay in utility/theme/space )
, when puzzle and solution are removed too far from each other, and require too many assumptions to jump to one true conclusion: https://en.wikipedia.org/wiki/Six_degrees_of_separation

A good puzzle exists in harmony with its environment/theme, with a close and personal correlation, and not in an antagonistic obscured contrast against it.

Lateral thinking, permuting (combining puzzles), or serendipity (unusual novel utility that still makes sense) are useful, but puns/DoublkeEntendres/Albures/Ambiguities localize poorly!

beware tvtropes.com where some puzzles come with attatched strings of being overused or used in unfit contexts, or ad-absurdum in any way.
#14
I like this a lot.

Arbitiarily low entity/pointer consttrains and other engine limits
(like lack of opengl/script performance and hassling with overlyobfuscating dynamic pointer workarounds)
made me do a tricky choice to abandon the AGS editor/engine for almost 2 years, and using other languages instead (mostly opengl).

Time to make a
https://github.com/fabioarnold/TwoTriangles
bridge to AGS, for all the CSG-rootsolging
https://en.wikipedia.org/wiki/Constructive_solid_geometry
spheretracking/raymarching of
https://www.shadertoy.com
if only for some cheap semi 2.5 d fractals/reflections or crepuscularity:
https://www.shadertoy.com/view/ltKcDt

basic idea is to define assets with lots of space partitioning and smoothMinimum:
https://www.youtube.com/watch?v=s8nFqwOho-s
https://www.shadertoy.com/results?query=smin
#15
its a viewframe overlay issue, OS related:
early adopter issues is to find settings with least conflicts, as in:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=54805.msg636569474#msg636569474
#16
A GUI is an instance of a pretty complex struct.
the ags editor visualizes and edits it nicely.

you could try to make your own similar struct, it doesnt need to have all features of GUI, just the ones you need.
that one you then instance yourself, and you could make an editor for it in ags that writes you a txt file.
#17
use a custom enum as extra argument, it still makes it possible to mess up, but it makes manual input harder to mess up.

often you need 2 functions, like, one that is faster for drawing long lines that are mostly outside of your paintable area.
and another function that is faster drawing lines that are mostly inside the paintable area.

if you want 1 for both, merge them, and add a parameter, a boolean or enum, with a default value, to chose which variant you want to use.

like, for sorting functions of integer arrays, dont make 12 sorting functions, make 1 sorting function that also takes +1 integer that sets what subroutine is chosen, use an enum for easy stup.

---


the draweline command is simple and dumb. better performance for all the lowres tasks on average.

but it may calculate a lot of point positions before it can realize that that point is far outside your view.

if you want to draw WAY out of frame|view you better use some trigonometry to calculate intersection point of your view|frame, a rectangle. with the line you want to draw.
of course that may slightly move your line, removing a bit accuracy.

your screen is a rectangle made of 4 lines.
check foe each of these lines where the your drawing line intersects with these 4 lines

https://en.wikipedia.org/wiki/Line%E2%80%93line_intersection

its easy to check if these 4 intersection points are 0<=x<=screen_size
and only 2 of the 3 intersections should pass that filter.
then you draw a line between these 2 points.

http://wiki.secondlife.com/wiki/Geometric#Line_and_Line.2C_intersection_point
#19
if i would be able to set integers in hexaecimal, that would be good.

Code: ags

//if you ever wanted to set... 
//int  i=-2147483648;
//this function tells you what AGS does inconveniently wrong in that case:

function on_mouse_click(MouseButton button){
  //32_bit_signed_int.range==[-2147483648 .. 2147483647]
  //the ags tutorial explicitly says so. you can find it by searchinf gor these numbers.
  //but "-2147483648" has artificial restrictions tht are just silly!
  #define MAX_POS32  2147483647//holds true, and AGS caps int at int>2147483647 //ocrrect  user friendly capping
  #define MAX_NEG32 -2147483648//holds true, BUT AGS caps int at int<2147483647 //error    user friendly capping gone bad
  //                                               AGG should cap  i at i<2147483648 //expected user friendly capping 
                                                       int a=  2147483648;//==2^31
  Display("For your convenience...[I wont let you      set a=  2147483648; because thats 2^31 and that would carry into the sign bit [Therefore I kindly set a=  %d; It is Super Effective!",a);
  //i think i am okay with this.
                                                    int b= -2147483648;//SADLY this sets i=-2147483647 (capped)
  Display("I'm afraid...          [I wont't let you set b= -2147483648; even though -2^31 is valid for the range of a signed_32_bit_int[          I kindly set b= %d; for your own inconvenience. And i just[           pretend that -2147483648 does not exist, even though it does. Die![Just for you dave! ",b);
  //okay fine, be that way! i have my one ace:
  int c=1073741824<<1;//==(2^30)<<1  //only by bitwise shifting i can set c=-2147483648;
  Display ("You defeated me this tine.[you set c= -2147483648 ==[==           %d[by setting c=1073741824<<1;//c=2^30<<1",c);
  //WRONGLY it pretends that i=-2147483648 is not even an option! And this makes
  //#define MAX_NEG32  -2147483648
  //defines wrongly to -2147483647
  //i really want to define a 32-bit sign bit="binary#10000000:000000000:00000000:00000000" for countless reasons.
  //but it just wont let me!
  //do i really need a global integer for that, set by shifting bitwise on game start.
  //thats just inconvenient!
}
#20
After coding ags script for 6 months i finally understand how this module does its things (since managed structs and attributes in ags are a bit tricky), and its a pretty good example for advanced ags scripting.

But why did ypu make each StackData instance store a float, even if it doesnt store any significant float, that seems so inefficient for the sake of speed and flexibility.

floats are just too different from the other datatypes, that can be more easily enumerated with an int, used as pointer.

You might aswell make a float buffer array to point at, just like you made a string buffer array.

the .AsString property could also return Character.Name; Object.Name; String.Format("&d",i); String.Format("&f",f);
SMF spam blocked by CleanTalk