Public Mapping Service

Forum for alternative clients, mods & discussions on the same.

Public Mapping Service

Postby derkami » Sun Oct 27, 2024 8:38 pm

Hello everyone.

https://public.hearthworld.com
I've been working on a public mapping backend service, that lets people connect and share their findings.

You can view the map freely at https://map.hearthworld.com

What is it and how does it work?
It's a mapping Backend much like the original Implementation of Andyleaps / APXELOG and the new Service of Dafels, but not selfhosted.
You can freely log in with your Haven and Hearth account via OpenID Connect (Single Singn On) provided directly by Haven and Hearth (Thanks Loftar).
It will upload Map information while you walk.

After Logging in you are able to access you map and marker settings from the dropdown of your account.
Image

In your map settings, you can get your individual Token / Endpoint for the clients:
Image
Don't worry, this token doesn't work anymore...
You can also set your Affiliation / Shared Secret to share your markers and your position with your friends.
Basically it works like a group token, only those with the same token can see you and what you shared! (Except for the Map data ofc. That's free 4 all.)

In your Marker Settings you can enable sharing your makers with your affiliation or make them public.

Your basic view on the map looks like this:
Image

Whenever people discover caves or spawn at different not yet discovered locations they create a new segment.
Segments are getting merged once they connect.
When you turn on the "Auto xyz" settings you basically track your movements while you explore. This is pretty useful for dual monitor setups where you want to track what you discover.

If you are sharing your secret, you'll see a list of all the players who are using the same affiliation under Players. Otherwise it's either empty or has only you inside.

Under markers you can enable and disable what you can see.

The cookbook is currently just a copy of "shublas" frontend. This is still WIP.

Currently the public map will always show the first ever found tile.

Wait we can Login with Haven & Hearth? You trying to steal our data?
Man look. I know that Single Sign On sounds scary, but all it does is redirect you to http://www.havenandhearth.com and authenticates you for me.
It will look like this:
Image
You accept and all I get is your user account id, which is only needed to identify you, and your username.
Nothing more nothing less. No password. No nothing.

What clients are working?
With the new update, only my own client.
I do have the changes commited so whever want's can adapt them. They only add information, it will be ignored on all other mapping tools.
https://github.com/DerKamii/KamiClient/ ... 9b97490f00
https://github.com/DerKamii/KamiClient/ ... 7f7a7ccfc4 <- because i made a writing error..
https://github.com/DerKamii/KamiClient/ ... 88fccc51e4 <- changes after going life because of ... weird issues
https://github.com/DerKamii/KamiClient/ ... 88fccc51e4 <- to not reset settings if you have this kind of implementation aswell.
https://github.com/DerKamii/KamiClient/ ... 3278063fd4 <- food stuff had also problems I didn't notice earlier.

This is completely optional, since it only works on my stuff anyway:
https://github.com/DerKamii/KamiClient/ ... c615a6a58c

If something changes, I'll update it here.

Why no open source?
Because this project wasn't made and designed to be.
There's also no obligation to do that.
But I do have a Roadmap for 2026.

Uh what? Roadmap?
[*] Design MapV5 Endpoint APIs with proper Documentation and Client code.
[*] Create an open source version of my mapping tool in PHP, so that it can be used fucking everywhere.
[*] Have a decentralized API on the open source version so that groups can share data between them even if they self host
[*] Have a centralized Endpoint for people to hook into, if they feel like sharing (You share - I share)
[*] Have all that open sources for the time when I'm not able to be here anymore.
Last edited by derkami on Sat Dec 06, 2025 10:38 am, edited 8 times in total.
Image
Image
Image
User avatar
derkami
 
Posts: 160
Joined: Thu Jun 02, 2016 11:28 pm

Re: Public Mapping Service - Beta Test

Postby mulamishne » Sun Oct 27, 2024 8:58 pm

Kinda based, good shout.
User avatar
mulamishne
 
Posts: 559
Joined: Fri Apr 21, 2017 8:35 am

Re: Public Mapping Service - Beta Test

Postby Ganhart » Mon Oct 28, 2024 5:24 pm

Is there a source code for this?
Or how can we make sure that our makers (including character tracking) is not available to the map owner?
User avatar
Ganhart
 
Posts: 230
Joined: Sat Dec 04, 2010 9:44 pm

Re: Public Mapping Service - Beta Test

Postby derkami » Mon Oct 28, 2024 9:31 pm

Ganhart wrote:Is there a source code for this?
Or how can we make sure that our makers (including character tracking) is not available to the map owner?

No, no sources for that one currently.
You can follow up the general discussion about that here: https://www.havenandhearth.com/forum/viewtopic.php?f=49&t=76387.
I'm working on my client to make markers opt in aswell (tracking already is).

Can't control what other client devs might or might not implement for that.
Although I can add an option to not accept markers and position on the backend side, but that would still require you to put the trust in me doing that correctly.

Andyleap map and a modded version of that from cediner are still available for private hosting.
https://github.com/Cediner/hnh-map-vuetify
https://github.com/andyleap/hnh-map/
Image
Image
Image
User avatar
derkami
 
Posts: 160
Joined: Thu Jun 02, 2016 11:28 pm

Re: Public Mapping Service - Beta Test

Postby Pills » Tue Oct 29, 2024 11:34 am

While I like the initiative. I don't understand why you list Ender as having to have tracking enabled to work.

The tracking enabled endpoint in ender code is entirely for sending position data and doesn't interfere with the grid update endpoint in any way.

Infact, comparing the two files, your usage of trackingenabled is completely identical, Enders / Yours

While I'm all for the initiative behind working together for world map and food data, Don't lie about needing to send tracking data if they're not on your client specifically.


I missed one of the changes in ender client. my bad
Last edited by Pills on Tue Oct 29, 2024 2:22 pm, edited 1 time in total.
jorb wrote:I dub you Sir Pills of the Mighty Spruce.
Thank you for your service. :pray:
User avatar
Pills
 
Posts: 642
Joined: Thu Apr 04, 2019 1:21 am

Re: Public Mapping Service - Beta Test

Postby vatas » Tue Oct 29, 2024 11:52 am

To be clear, you're asking volunteers get an account through PM, then explore the current world to see if the map upload/merge/etc. works?
Haven and Hearth Wiki (Maintained by volunteers - test/verify when practical. Forum thread

Basic Claim Safety (And what you’re doing wrong
TL:;DR: Build a Palisade with only Visitor gates.)

Combat Guide (Overview, PVE, PVP) (Includes how to escape/minimize risk of getting killed.)
User avatar
vatas
 
Posts: 4974
Joined: Fri Apr 05, 2013 8:34 am
Location: Suomi Finland Perkele

Re: Public Mapping Service - Beta Test

Postby derkami » Tue Oct 29, 2024 12:57 pm

Pills wrote:While I like the initiative. I don't understand why you list Ender as having to have tracking enabled to work.

The tracking enabled endpoint in ender code is entirely for sending position data and doesn't interfere with the grid update endpoint in any way.

Infact, comparing the two files, your usage of trackingenabled is completely identical, Enders / Yours

While I'm all for the initiative behind working together for world map and food data, Don't lie about needing to send tracking data if they're not on your client specifically.

gob.java in ender:
Code: Select all
public void move(Coord2d c, double a) {
   Moving m = getattr(Moving.class);
   if(m != null)
       m.move(c);
   if(Boolean.TRUE.equals(isMe()) && CFG.AUTOMAP_TRACK.get()) {  // <-- both work in unison only if tracking is enabled
       MappingClient.getInstance().CheckGridCoord(c); // <-- this sends the grid infos
       MappingClient.getInstance().Track(id, c);  // this tracks the player movement
   }
   this.rc = c;
   this.a = a;
    }


This is something I had a PR for a long time ago for ender. He didn't implemented my change.
https://github.com/EnderWiggin/hafen-cl ... 77fb21924d

At least this helped me realize that when I merged with Ender, I brought this bug back into my own client. So i need to change it again.. FML.

Ideally I can work on all that more openly to actually have the implementations fixed for all clients, that's the whole point.


vatas wrote:To be clear, you're asking volunteers get an account through PM, then explore the current world to see if the map upload/merge/etc. works?

Basically yes.
I'm thinking about opening the registration, because participation is kinda lacking. Don't know if that is due to the requirement of having to write here to get a registration link.
To be clear, this is not for those who can host their own map. It's for the rest that can't, they probably will come at / after wipe...
Image
Image
Image
User avatar
derkami
 
Posts: 160
Joined: Thu Jun 02, 2016 11:28 pm

Re: Public Mapping Service - Beta Test

Postby soroman » Tue Oct 29, 2024 2:14 pm

not everyone will want to share the maps, but I will be happy to share the cookbook and use someone else's experience
User avatar
soroman
 
Posts: 23
Joined: Wed May 16, 2012 1:21 pm

Re: Public Mapping Service - Beta Test

Postby Pills » Tue Oct 29, 2024 2:23 pm

derkami wrote:stuff


Ah shit my bad, editied my other post. Yeah fair enough I missed that in gob.java.
jorb wrote:I dub you Sir Pills of the Mighty Spruce.
Thank you for your service. :pray:
User avatar
Pills
 
Posts: 642
Joined: Thu Apr 04, 2019 1:21 am

Re: Public Mapping Service - Beta Test

Postby octanewt » Tue Oct 29, 2024 7:46 pm

Looking great! I've got a character boating around just checking out the world (and avoiding trolls, lol) and would like to help test.
octanewt
 
Posts: 1
Joined: Mon Aug 06, 2018 7:22 pm

Next

Return to The Wizards' Tower

Who is online

Users browsing this forum: Claude [Bot], Wideee, flooper and 7 guests