• Register
RSS My Blogs  (0 - 10 of 62)

Web 3D engine update.

tuxjsmith Blog

2023-May-24 :: www [dot] logfarm [dot] net

Door game :: Debris Field

Door games, is a term used by bbs and used to refer
to some kind of text adventure.

and in that style, debris field is a text adventure
game.

Debris Field game mechanics are revealing themselves
as i write but it is a lot of fun to create.

to try it, click:

- BBS tab.
- type: 4
- type: 1

read the intro and then:

- type: BEGIN

Inventory

Debris Field has a dedicated inventory but if items
are added to the 3d game inventory (I) and they are
relevant to Debris Field, then they will be visible
from the same player's text adventure inventory also.

This idea might seem strange but I am determined to
make it possible for assets to be transferred from one
game realm to another.

Desktop client

Currently logfarm.net is only available from this
web page but there is a desktop client.

as a desktop client, it uses little CPU and memory.

It is 14 megabytes in size.

----

There is an Apple computer on the first floor of the
house and if clicked, displays a blog.

----

At your convenience would you mind trying the chat
facility please.

from the ~$ tab,

type: CC HELLO ALL

anyone else on the same map as you, will see:

HELLO ALL

If someone wanted to reply then they would type:

CC SOME TEXT

To see how many users are connected, from the ~$
tab,

type: USERS

but the most users i have ever seen is 2 :-)


speak soon.

-- END OF LINE

Abstract

Metaverse User Spaces will be diverse and built by bedroom coders like us.

There is a gold rush by commentators who are striving to be authorities of this new ambiguous concept currently labelled Metaverse; but they all focus on conceptual, high bandwidth hardware and software development efforts, where it is assumed that only those with lots of money are capable of building Metaverse engines.

Frankly, they do not know what they are talking about and are all informed by science fiction.

Let us start from a point of lowest denominator and call it a beginning where head gear and high powered computer hardware are irrelevant.

Independent game developers and bedroom coders have an opportunity to become influential ( and even profitable ) components of this new Internet phase, by building Metaverse User Spaces that require small amounts of computer power; making them practical for navigation by the rest of us.

That is to say, build our own Metaverse User Space engines, rather than simply rely on bloated Unreal, Unity or Meta software, hoping that their licences will not be too imposing…Hmm.

Super-internet-corps will not be able to penetrate Metaverse User Spaces in the same way that their spiders currently parse and harvest; perhaps enabling us to reclaim control of what super-internet-corps believe they own.

For the rest of this document, MUS = Metaverse User Spaces.

What is the lowest denominator of MUS and who cares?

Commentators speak in terms of head gear or other high powered computer equipment; implying that Metaverse will be an elitist activity where people with little money need not apply.

Bizarre to me, that so many are blinkered to economic realities most of us face; but this is also a reason why diverse MUS are inevitable.

Somebody else said, “Build it for the poor and the rich will come.”

Lets consider text based Multi User Dungeons as a lowest denominator MUS; a gaming and communication environment playable even by those without sight.

Minimum MUS functionality

User Asset Transfer, between two MUS.

That is to say, a User Asset, perhaps a hat, that has been bought or built in one game, can be transferred to another game.

The second game may decide that this hat has no value or special powers, reducing it to something that is just decorative.

Different text based Multi User Dungeons, running on separate domains, would allow players to transfer ( download and upload ) an inventory.

These Multi User Dungeons would then, by definition form Metaverse User Spaces.

Multi User is not actually required; single player text adventures could allow users to transfer inventories that are created by other text adventures ( Multi User or not ); so forming a type of single player Metaverse User Space where assets have been transferred from one domain to another, from one game to another.

User Asset Transfer

A simple, low bandwidth solution would be to use structured text, JSON, XML, etcetera.

What about cheating or accidental editing of Structured Asset Files?

A simple solution: checksum

MUD_1

- A user requests their Structured Asset File.

- MUD_1 server creates an SAF and generates a checksum value.

- This file includes a URL from which this SAF’s checksum value can be compared; URL also being a proof of origin.

- User downloads the file.

MUD_2

- User requests to upload a Structured Asset File.

- MUD_2 server compares its checksum value via the included URL.

- If valid, proceed.

An alternative idea could be for MUD_1 to provide MUD_2 with a URL from which it can download an SAF.

We use the term ‘Transfer’ and this implies that assets are moved from one domain to another; so unless items are moved back again, they will no longer exist, where they originated.

Asset value and effect

An asset from MUD_1 will probably not have the same value or effect in MUD_2; or it may have more.

If MUD_2 has no concept of transferred assets, then they will have zeroed stats and market value; but items could still be sold via an auction house.

User made assets

Since a mechanism would already be in place to zero stats and monetary value of unknown assets, user made items could be incorporated as decorative accessories, with little effort from Multi User Dungeon maintainers.

Metaverse search engine opportunity

Metaverse Exchange.

A MUD_1 user wants to know what value her inventory items have on other Multi User Dungeon servers.


In 1999 I wrote a story called: Virtual Rendezvous.

Inspiration
Spent time around Mudge and Monkey (MacMillan) in Massachusetts. We worked for a company called VideoLogic Inc.

One day Mudge let me into the l0ft.

Synopsis
(In the story) Virtual Rendezvous is a virtual environment where people play, role play, buy and sell and communicate.

(In the story) Virtual Rendezvous is an open source server for anyone to install. Users/players traverse locations, server to server via portals.

(In the story) Game console users and personal computer users connect to the same Virtual Rendezvous servers seamlessly, playing side by side. War has broken out between the two types of gamer. Terrorist acts (within the game environment) are being carried out by both sides, destroying property and avatars.

(In the story) Virtual Rendezvous servers must abide by the rules laid out by the VR Federation, an open-group of real people, evangelising Virtual Rendezvous as an open source, free to use and liberal gaming environment. To help govern this ideology, VR Feds (in game police) have high level access and control over all assets located on every VR server. A VR Fed may or may not be artificial, both exist.

An explanation is given for the aggressive development-of and increased number-of artificial VR Feds, in place of real-people:

The power that VR Feds have is too great to entrust to us, real people.

(In the story) all data stored by any server is always accessible to everyone; data that could identify someone behind an avatar is outlawed.

A lady called Rachel Jales starts to find that she is being followed in the real world.

The l0ft influence
The good people of the l0ft (when I visited there were both genders) become the clan known as: SideEffect (in my story)

(In the story) SideEffect specialise in building in-game machines of all kinds which they rent or sell.

The real world
The year 2000, I'm back in England and working for Content Technologies Ltd, Theale, Berkshire. I describe the above synopsis to a colleague in the kitchen. We must have been overheard because I discovered a few weeks later the domain name 'virtualrendezvous dot com' had just been purchased by someone in Tilehurst, which is located 2.5 miles away from Theale.

I didn't recognise the name of the person who had registered the domain but I fantasise that they believed I was on to something and this was their way of profiting from it. 'virtualrendezvous dot com' has been owned by several different people since 2000 and was 'parked' the last time I looked.

In 2005 I still had a Windows 2000 computer that I was using for gaming but also kept my story files on it; it got hacked. They replaced its \etc\hosts file with one that redirects all domain names to localhost (if I remember correctly), and according to the system logs, copied everything I had on that computer, from web cache to OpenOffice documents. I was not deprived of my digital property so technically the hackers did not steal anything.

FYI, the \etc\hosts file they pushed, contained thousands of commonly used domain names so whenever I tried to connect to something, because \etc\hosts associated it with an IP address of localhost, the web browser was just redirected to localhost.

I began to experiment with creating 3D environments using Lightweight Java Game Library, JMonkey and libGDX, which is where we are now.

Since this is a hobby project, I don't think it's an exaggeration to believe that I will need to keep at it for the rest of my life to make Virtual Rendezvous real but this is what I intend to do.

I created a (hash)virtualrendezvous channel on freenode.irc.net many years ago and occupied it always but freenode has stopped working.

Metaverse

tuxjsmith Blog

Is it possible to replace two dimensional, flat web pages with three dimensional alternatives? How about an e-book or a comic?

Yes.

A solution has been provided by those pioneering, three dimensional game inventors; combine both 2D with 3D;

Referred to as a heads up display or HUD, three dimensional content can be navigated, while flat text, icons and controls are displayed simultaneously.

A comic strip appears to be two dimensional but clicking a cell centres the picture and with a bit of a cut scene, it becomes a 3D environment, allowing the reader to exit through doors and windows and perhaps even effect the comic strip’s narrative.

An image on an e-book page is clicked, causing text to gently fade away, revealing a glowing forest with brightly coloured undergrowth; a dream world that can now be explored.

Metaverse or Web v3 (dee)

(FaceBook’s) Meta's Metaverse is theoretical, conceptual, non-existent and some might argue, just rhetoric, distracting from negative news coverage, calming investors.

Meta's Metaverse concept, has us ditching web browsers in favour of wearing virtual reality head gear, clearly limiting its usage on economical and practical levels.

Web browsers are not going away, ever!

Mozilla Foundation, Microsoft, Google, Opera, etcetera, are constantly improving their browser's ability to render three dimensions.

SnowCrash (book) coined ‘Metaverse’ and (FaceBook) Meta seem to be taking it as a blueprint; but it is fiction and bares little resemblance to realities of 2022.

Web v3 (dee) poses an interesting problem for those who catalogue web pages; how do they penetrate a three dimensional environment in order to populate their search engines?

Isn’t that interesting?

Here is an opportunity for us indies to get into the Web v3 (dee) search engine business and since we build 3D engines, I ask you to consider this question seriously:

What would Web 3D engines need to include, to make their content searchable?

An XML file, describing common properties across all Web 3D engines?

Metaverse = Web v3 (dee) and indie development will be the Metaverse way.



jump command

tuxjsmith Blog

The player can jump to any room/map. Select the ~$ tab ( at the bottom of the window ) by either clicking on it or scroll through the tabs using the left-control key, until ~$ is orange ( blue means un-selected ).

The following will fail because you don’t have a transport/jump cube, ( which we will make in a moment ) but to jump to another room we select the command line tab ( ~$ ) and type:

jump roomNumber

example:

jump 14

… which will fail because we need a jump/transport cube, giving us the power to traverse large distances instantly.

Building the cube is easy.

To build a jump cube:

  • we need 5 flower parts,
  • click an instruction whiteboard,
  • click OK.

Like this:

In the first room, AKA the cemetery, there are flowers. If we tap a flower it falls over leaving flower parts ( a flower’s payload ); clicking flower parts adds them to our inventory.

Press I ( i ) to toggle your inventory. Left and right arrow keys move between items.

Once you have 5 flower parts look around the cemetery and find the whiteboard that makes mention of a ‘jump cube’ ( navigate a room/map with the W, A, S, D keys ) then click the whiteboard.

Note: when the ~$ tab is selected, it will absorb all keyboard interaction including the W, A, S, D keys so to start moving around a map please select either the INFO or LOG tabs, by tapping them or pressing the left-control key.

An OK and CANCEL button will appear along with some text in the INFORMATION text area of the HUD.

Note: the text and buttons will disappear after a minute so if that happens just tap on the whiteboard again.

Note: the HUD can be resized with the square buttons on the right and pressing the larger square a couple of times maximises the text area. Text can be scrolled with the up and down arrow keys.

Click OK.

The jump cube inventory card will be displayed, opening the inventory if it is closed.

Now select the ~$ tab and type:

jump 14

You will be transported to room/map 14.

Note: when the ~$ tab is selected, it will absorb all keyboard interaction including the W, A, S, D keys so to start moving around a map please select either the INFO or LOG tabs, by tapping them or pressing the left-control key.

Note: I have configured numbers to represent maps/rooms for now but that is easily changed since they are configured using an XML file so later on we will probably be using names/words that work within the game space, rather than boring numbers.

Currently there are 62 rooms/maps numbered from: 1 .. 62 so:

jump 1
jump 2
jump 3
::

http : // www . logfarm . net

The spirit of this game is a text adventure so a usable command line is required.

At the bottom of the screen are three tabs:

  • INFO :: information
  • ~$ :: command line
  • LOG :: engine messages

The tabs are currently navigated by clicking on them. F keys will also be used from the next build: F1, F2 and F3.

To resize a tab’s text area click the larger square ( button ) on the right once or twice. The small square ( button ) at the bottom will reduce the text area to a minimum.

This is a start so commands are currently limited in number. First click on the ~$ tab.

When the ~$ tab is selected ( the tab name will become orange ) all keyboard activity will be absorbed by the command line so W, A, S, D navigation will not be possible. By clicking on INFO or LOG W, A, S, D navigation will start again.

Type: INFO

Information about this room will be displayed, listing exits. We can traverse those exits by typing one or two characters:

  • N :: to navigate north
  • E :: to navigate east
  • S :: to navigate south
  • W :: to navigate west
  • NE :: to navigate north east
  • NW :: to navigate north west
  • SE :: to navigate south east
  • SW :: to navigate south west
  • Resizing the text area will reveal more text, scrollable using up and down arrow keys.

Pressing any key will remove room information from the command line text area, the escape key will remove everything else.

Room information will also appear on the INFO tab enabling the player to switch from the command line and navigate using the W, A, S, D keys while still viewing information.

---

Built with libGDX so no plugins required.

Game lives at: http : // www . logfarm . net

I haven't tested them all coz there's 60 of 'em but if anyone finds a problem, please use your super powers to let me know and I will mend it. The sort of problem you might find is the occasional blank-black room but that can be mended easily. For example there might be a mistake in an XML file or a blender map may have been exported using the wrong format.

Some rooms have partitioned areas where stuff will be located; explaining where all of the whiteboards have come from. There will be wheelbarrows which are linked to the players inventory. Wheelbarrows can be pushed through doors, from room to room. It wont be possible to push or pull a wheelbarrow up steps so in order to carry items when using staircases the player must use backpacks. Wheelbarrows can carry much larger quantities of items with larger dimensions; backpacks therefore will be limited with regards to their capacity.

Wheelbarrows, backpacks and other stuff will remain where the player last put them down.

Info items:

Whiteboards with room numbers written on them, will display information about the room. The same text or an abridged version that ( will be ) is displayed when the player types: info room

The same is true for any object that has a Bounding Box. Currently: walls, steps, doors, whiteboards.

Next:

The spirit of the game is text adventure so we need a keyboard entry and feedback system for interacting with computer consoles and other in game objects.

A 3D game built with libGDX, exported to javascript using googly things so no plugins required. It can be found at:

http : // www . logfarm . net

30-ish empty rooms have so far been created :: www . logfarm . net

The following map is a guide to the layout. Rooms built are highlighted in green. Exits that lead to unbuilt rooms will return the player to the beginning.

www . logfarm . net / map.jpg

Currently the whole game is 4 megabytes. I expect the finished game to take up no more than 10 mega on the server. On the player’s end, just a few kilobytes of text will be required for their Save State.

I am building a 3D game in the spirit of Text Adventures. The adventure will be added after all rooms have been built.


Building a text adventure in 3D; approximately sixty rooms, two rooms a day so it wont take too long.

A first person 3D environment that runs in a web browser without any additional extensions or plugins.

The project is being built using:

  • libGDX :: game development framework.

  • Blender :: 3D creation suite

  • Gimp :: image editor

  • NetBeans :: integrated development environment

  • Android Studio :: integrated development environment

  • Linux :: computer operating system

It is and will only be a single player game.

It is and will continue to be free to play without adverts.

No personal data will ever be requested or uploaded.

There will be friendly creatures and lots of secret passages, absolutely no adult or horror content whatsoever. Navigation is via W, A, S, D keys and an inventory ( press: I ); manufacturing is already built in, though not too much to pick up or build at the moment because the adventure will be added once all the rooms are built.

Commands, the player will be expected to type them in. I.e. ‘look’, ‘push’, ‘drop’, ‘say’ ...

The player will be able to save their current position writing a tiny amount of text to the player’s computer.

The URL is:

http : // www . logfarm . net

Note, I have not paid for an SSL certificate, it’s not something I can justify the money for.

The story goes: someone who came before you has numbered some of the rooms using whiteboards; just how she has carried all those whiteboards, we’ll hopefully find out and she has also used her marker pens to let us know what she’s discovered.


A 3D web engine, powered by libGDX :: build 9

Items can be configured to have a limited life. Half way through their life something about their visual state will change.

Logfarm.net

Logfarm.uk