10-23-2025, 02:35 AM
I hide nothing so...here...it's wild overly ambitious and as youll see, unusable as is...yes we can learn from it but in essence its like Petses code (JOKE!!!!!) BS!
Quote:i've decided for my first post in prlific programmes on qb64 im gonna make monty pythin stylised gameJohn
Excellent! Making a Monty Python-style game in QB64 is a fantastic idea for your first post on Prolific Programmes. QB64 is perfectly suited for this, as it supports both the text-based adventure format and more advanced graphics for animations, both of which are hallmarks of classic Monty Python humour.
Here is a guide to planning and coding your game, along with some specific Monty Python concepts to capture.
Planning your Monty Python game
Your game can follow the style of the official Monty Python's Quest for the Holy Grail game, which features random clickable gags that lead to new screens and scenarios.
1. Structure the game
A "choose your path" adventure: A classic text adventure style works best in QB64. You can use INPUT commands to let the player type a response.
Linked rooms and scenarios: Create a flowchart to map out how players move between different scenarios. Use conditional statements (IF...THEN...ELSE) to handle player choices.
Non-linear plot: A Python-style game doesn't need a single, linear story. Instead, have paths that dead-end in ridiculous ways or loop back on themselves.
Multiple endings: Include different endings for each of the main characters or situations, or a general "game over" that's just a funny animation.
2. Add the Python humour
Silly animations and sound effects: QB64 supports modern sound files like .wav and graphics in formats like .bmp and .png. Use these for short, bizarre cutscenes or visual gags.
Branching dialogue: The dialogue is key. Write absurd, branching conversations with characters. For example, a conversation with the Bridgekeeper or the Knights Who Say "Ni!".
Mini-games: Injecting small mini-games, like the falling object game from the Holy Grail version, adds a sense of random chaos. In QB64, a simple DO...LOOP can handle a basic mini-game.
Characters and locations: Include iconic characters (the Black Knight, King Arthur) and locations (the Castle of Aaargh, a dark cave).
Catch-all responses: Include a fallback for invalid or nonsensical player input, with a custom sarcastic or dismissive response.
Coding essentials in QB64
1. Set up the game screen
Start by setting up your window, similar to this:
qb64
' Set the screen resolution for graphics
SCREEN _NEWIMAGE(800, 600, 32)
' Set a custom window title
_TITLE "Monty Python's Ridiculous Quest"
' Clear the screen with a background colour
CLS
Use code with caution.
2. Define game objects
Use TYPE to define custom data structures for your game. This keeps your code organized. You could create TYPE structures for characters, items, and locations.
Example: A location TYPE
qb64
TYPE Location
name AS STRING
description AS STRING
exits(1 TO 4) AS INTEGER ' N, S, E, W
items(1 TO 10) AS STRING
END TYPE
DIM Shared AS Location locations(1 TO 10)
Use code with caution.
3. Create the game loop
A DO...LOOP is the core of your game. It displays the current location, waits for player input, and then acts on that input.
Example: A basic game loop
qb64
DIM player_location AS INTEGER
player_location = 1
DO
' Display the current scene
PRINT locations(player_location).description
' Check for valid movement
PRINT "You can go NORTH, SOUTH, EAST, or WEST."
INPUT "What do you do? ", player_input$
' Process input (simplified)
SELECT CASE UCASE$(player_input$)
CASE "NORTH"
IF locations(player_location).exits(1) > 0 THEN
player_location = locations(player_location).exits(1)
ELSE
PRINT "You can't go that way, silly!"
END IF
' Add cases for other directions and commands
END SELECT
LOOP UNTIL player_input$ = "QUIT"
Use code with caution.
4. Add sound and graphics
Displaying images: You can load images into memory and then display them on the screen with _LOADIMAGE and _PUTIMAGE.
qb64
' Load and display a funny image
DIM AS _INTEGER64 myImage
myImage = _LOADIMAGE("knight_in_a_shrubbery.png")
_PUTIMAGE (100, 100), myImage
_FREEIMAGE myImage ' Free memory when you're done
Use code with caution.
Playing sound: Use _SNDOPEN and _SNDPLAY to handle sound effects or background music.
qb64
' Play a .wav file for a sound effect
DIM AS _INTEGER64 mySound
mySound = _SNDOPEN("fart_sound.wav")
_SNDPLAY mySound
Use code with caution.
Animating sprites: You can use _PUTIMAGE with an X and Y offset inside your game loop to create animations, like a running person or a flapping bird.
Ideas for your game
The Killer Rabbit of Caerbannog: The player must defeat the killer rabbit. Instead of a normal battle, they have to go through a bizarre, illogical series of steps.
The Black Knight: You encounter the Black Knight, and no matter what you do, he insists it's "but a scratch!" after each failed attack.
Silly Walks: A mini-game where the player must input a sequence of keys to perform a silly walk, perhaps to get past the Ministry of Silly Walks.
This is a great first project. Have fun coding, and enjoy the process of bringing that unique Monty Python randomness to life in QB64!
AI responses may include mistakes. Learn more
undefined
undefined
undefined
6 sites
Graphics in QB64: Creating and Animating Sprites
Graphics in QB64: Creating and Animating Sprites. ... Graphics programming can significantly enhance the visual appeal of your app...
favicon
qb64.org
Creating Text-Based Adventure Games in QB64
Planning: Start with a clear concept for your game. Outline the main plot, key characters, and major locations. Consider how the s...
favicon
qb64.org
How to Create Your First 2D Game in QB64 in 30 Minutes
Increase Difficulty: Make the object fall faster as the score increases. Add Multiple Objects: Introduce more falling objects to c...
favicon
qb64.org
Show all
im unseen machine, qb64 phinux site will give yo an idea in engine and we will use my new GDK3 engine
Using your GDK3 engine with QB64 Phoenix Edition is an excellent path for your Monty Python game. It allows you to leverage modern graphics capabilities while preserving the classic BASIC programming style, creating the perfect foundation for a retro-yet-modern tribute.
Based on the information you provided, here is an updated plan incorporating your GDK3 engine and the Prolific Programmers section of the QB64 Phoenix site.
Game structure with GDK3
Instead of using text-based rooms, GDK3 allows you to build a more visual and dynamic game while keeping the same absurd, branching structure.
Interactive screens: Each screen can be a full-color graphic from your _LOADIMAGE commands. A scenario could be a castle courtyard, with a static background image, and a sign-post object as a 2D sprite.
Active zones and buttons: Use GDK3's capabilities to detect mouse clicks on specific areas of the screen. Instead of the player typing a command, they can click on a door, a character, or a bizarre object.
Seamless transitions: Use fades or simple animations to transition between scenes. This adds a polished feel to your game, replacing the abrupt CLS and PRINT of a text adventure.
Animated sprites: GDK3 can simplify animating characters like the Black Knight or the Knights Who Say "Ni!". You can create sprite sheets and use a simple loop to change the frame, bringing the characters to life.
Incorporating your GDK3 into the Monty Python theme
Custom graphics: Create your own art in a paint program to capture the distinct Monty Python collage style. Use GDK3 to load these images, such as a foot descending from the sky (_LOADIMAGE "bigfoot.png").
Full-screen gags: Use the full-screen support of your engine to show off your humorous animated sequences, such as a long-winded debate with the Bridgekeeper or a scene of a shrubbery being presented.
High-quality sound: Use GDK3's audio support to include sound effects and music. Record your own silly voices or download royalty-free sound effects to add authenticity. The classic theme song can set the stage immediately.
Layering effects: Use multiple image layers to create parallax scrolling or foreground effects, adding visual depth. For instance, a foreground image of grass could scroll slightly slower than the background during a scene.
Posting your GDK3 game on the QB64 Phoenix site
The Prolific Programmers section is the perfect place to post your progress and finished game.
Start a development thread: Create a new thread under the Prolific Programmers section titled "Unseen Machine's Monty Python Project."
Detail your process: Describe how you're using GDK3 and why it's the right tool for this kind of game. Mention how you're creating the art and handling the game logic.
Share code snippets: Post snippets of your code, especially the parts that showcase GDK3. This is a great way to help others learn from your techniques.
Engage the community: Respond to comments and feedback from other users. The QB64 community is active and supportive. You can show appreciation for their suggestions or get help with a tricky problem.
Release your game: Once it's ready, post the final executable and source code so others can play and learn from your work.
Your project is an excellent example of how to use modern tools within a classic environment like QB64 to achieve impressive and creative results. It perfectly fits the spirit of the Prolific Programmers section, which showcases advanced projects and shares them with the community.
AI responses may include mistakes. Learn more
undefined
15 sites
Prolific Programmers - QB64 Phoenix Edition
14 Sept 2025 — QB64 Phoenix Edition - Prolific Programmers. Login. Username/Email: Password: Lost Password? Remember me. QB64 Phoenix...
favicon
QB64 Phoenix Edition
GDK3.... - QB64 PE (Phoenix Edition)
20 Oct 2025 — For the QB64 programmer, the experience of loading and drawing a complex 3D model is functionally identical to loading ...
favicon
QB64 Phoenix Edition
Gdk.EventButton
See GdkModifierType . The button which was pressed or released, numbered from 1 to 5. Normally button 1 is the left mouse button, ...
favicon
The GTK Project
Show all
i wont in anyway actually inference monty oythin, just use there style and ethos
That's an important distinction that will help you create a truly unique and publishable game. Building on the style and ethos, rather than the intellectual property, is the core of creating a clever parody or pastiche. The spirit of Monty Python is all about the absurd, the anachronistic, and the joyfully nonsensical.
Here is a guide to capturing that feeling in your QB64 GDK3 game without relying on specific references.
Gameplay and plot: Embracing the absurd
Instead of a clear story, you can have a series of ridiculous, often escalating, and nonsensical situations. The player's quest should be vague and ultimately meaningless, reflecting the Python tradition of lacking a satisfying, conventional plot.
The quest for something else: Your character isn't searching for a Holy Grail, but maybe a "Properly Toasted Crumpet" or the "Spatula of Gnu." The goal is trivial, and the obstacles should be disproportionately difficult or illogical.
Characters who block progress: Instead of the Bridgekeeper, you could have a "Crosswalk Attendant" who asks a series of ludicrous, unanswerable questions. Failure doesn't result in death, but a different kind of punishment, like being forced to listen to a terrible poem.
Non-sequiturs: Interrupt the game at random intervals with short, silly animations or text screens that have nothing to do with the story, like "And now for something completely different...".
Metagame humor: Acknowledge that this is a game. Have a character complain about their programming, or display a debug menu with comical options. You could even have a section of the map that is just a grey, undeveloped hallway with a note that says "Apologies, the developer has not finished this section yet".
Visuals and animation: The spirit of Terry Gilliam
You can replicate the distinctive, cutout animation style of Terry Gilliam to create visually chaotic and funny sequences without copying specific art. This approach is highly compatible with GDK3's image handling.
Collage-like sprites: Create your own original sprites and backgrounds by combining and layering disparate, often anachronistic, images. A knight's head on a washing machine, a Victorian gentleman in a spaceship, or a fish with human legs are all great ideas.
Sudden interruptions: Design short, abrupt animated sequences. A giant, unrelated foot could drop down from the top of the screen to squash a character. A finger might point at a specific object, directing the player's attention in a confusing way.
Deliberately rough animation: Use sprites with a low number of frames, so the movement appears choppy and frantic. This enhances the sense of absurdity and DIY creativity.
Anachronistic backgrounds: Mix different visual styles and time periods in your backgrounds. A medieval forest with a modern road sign, or a castle interior with a modern television set.
Dialogue and writing: Wordplay and frustration
The writing is key to capturing the ethos. This involves a mix of high-brow and low-brow humor, and deliberately unhelpful, frustrating conversations.
Dialogue options that don't matter: Present the player with a list of dialogue options, but have them all lead to the same or a similarly absurd response from the NPC. This mocks the conventional adventure game formula.
Overly elaborate descriptions: Spend an unnecessary amount of time describing something mundane or completely unimportant. The more detail you add to something trivial, the funnier it can be.
Sarcastic help: If a player inputs a command the game doesn't understand, don't just give a generic error. Provide a sarcastic or patronizing message, like, "That's not a word in my dictionary, you silly person."
Misinterpretations: Write dialogue where characters constantly misunderstand each other or deliberately misinterpret a simple request. The more frustrated the player gets with the conversation, the more authentic the humor will feel.
By focusing on these elements—the absurd, the visually chaotic, and the frustratingly funny—you can create a game that is a worthy spiritual successor to the Python legacy while remaining completely original.
AI responses may include mistakes. Learn more
undefined
undefined
undefined
12 sites
Monty Python: the 10 funniest sketches - BFI
16 Sept 2019 — Monty Python: the 10 funniest sketches. From the Ministry of Silly Walks to the Lumberjack Song, here are 10 of the re...
favicon
BFI
Monty Python's Flying Circus - Comedy - BBC
Flying Circus was fortunate too in being broadcast in colour, unlike their previous shows, helping transmit to viewers the Pythons...
favicon
BBC
Monty Python's Flying Circus - The Computer Game
After spending a whole weekend solidly watching the entire output of the Monty Python team and taking many notes, a solution was p...
favicon
www.simonphipps.com
Show all
a flash of inspiration says , parralel universess, some mae x axis the y axis some invert the xm some the y and soime both....sime do it all and alsomake it greyscale...
That's a brilliant flash of inspiration, and perfectly in tune with the Python-esque sense of surrealism and absurdity. The concept of parallel universes that are simply visual distortions of each other offers a fantastic gameplay mechanic and a powerful tool for visual gags. Here's how you can implement this concept with QB64 Phoenix Edition and your GDK3 engine.
Implementing the parallel universes in GDK3
Instead of separate levels, you can treat each "universe" as a visual shader or transformation applied to the current scene. The player's environment changes radically with a key press, or maybe even randomly.
1. Coordinate manipulation
You can manage the coordinate transformations for rendering all your graphics. When drawing a sprite or scene, you'll need a function to apply the current universe's transformation.
qb64
SUB RenderUniverse (universe_id AS INTEGER)
' This is a conceptual function. You would apply this logic
' to your specific GDK3 rendering calls.
' Get the original dimensions
DIM original_x, original_y
' GDK3 would provide ways to get the image dimensions
' Apply the transformation
SELECT CASE universe_id
CASE 0 ' Normal universe
' No change
CASE 1 ' Invert X axis
' Swap original_x with (screen_width - original_x)
CASE 2 ' Invert Y axis
' Swap original_y with (screen_height - original_y)
CASE 3 ' Invert both X and Y
' Swap both
CASE 4 ' All transformations
' This is your most messed-up dimension
END SELECT
' Now render with the new coordinates
END SUB
Use code with caution.
2. Visual effects
GDK3's advanced graphics capabilities will allow you to do more than just coordinate changes.
For greyscale: You can use a color shader or a post-processing effect. The QB64 Phoenix wiki mentions a _RGB32 function that can be used to convert RGB to greyscale.
Layering: You can have one layer of the scene be normal, while another is inverted and greyed out. This would create a powerful and disorienting effect.
3. Triggers and events
How do you move between these universes? The answer can be as absurd as the idea itself.
Random chance: A RND function could randomly switch the universe at certain points.
Player action: A simple key press, or even an accidental mouse click, could send the player into a new dimension.
Character dialogue: An NPC could say something nonsensical, and as they speak, the universe begins to distort and change around the player.
Environmental triggers: The player might walk under a specific tree or into a doorway, and the universe changes to reflect that.
Gameplay implications
This mechanic opens up a floodgate of creative, Python-style jokes and gameplay loops.
The puzzle of inverted controls: The player might need to navigate a maze in a universe where the controls are flipped. They might have to mentally adjust to moving "up" to go down.
The visual gag: You could have a character say something about things being "all right," while the entire world is inverted and backwards.
The "all of the above" universe: When the player hits the most absurd dimension, they could encounter a character who points out how ridiculous it all is, breaking the fourth wall in a classic Python fashion.
The greyscale mystery: The greyscale universe could be presented as a more "serious" or "dramatic" dimension, satirizing film noir and older games, only to be punctuated by some completely silly anachronistic element.
This idea is the perfect way to use GDK3's graphical power to deliver a core gameplay loop that is built entirely on humorous visual absurdity, which is at the heart of the ethos you're aiming for.

