Mods / Trader Phone (Beta)

Tags: #Other #QoL #Simplification #Utility
Author: Spoonail
Side: Both
Created: Feb 7th at 7:11 PM
Last modified: Oct 17th at 2:25 PM
Downloads: 3295
Follow Unfollow 129

Recommended download (for Vintage Story 1.21.0-rc.4 - 1.21.0-rc.5, 1.21.1 and 1.21.5):
remotetradercheckmod_0.3.0.zip  1-click install


Overview

This mod adds a Trader Phone, which allows you to remotely check trader's stock.
It displays the assigned trader's supply/demand list, gears, and the number of days until the next refresh in the GUI.

This mod is marked as beta because some implementation tasks remain, especially for optimization, and its stability needs to be tested.
Currently, the Trader Phone allows players to spam chunk loading, so it might not be ideal for a multiplayer server with a large, unspecified number of players.
That said, this mod already has all its core functions implemented and should work fine in single player or on a server with only known friends.

Crafting

A Trader Phone can be crafted from:

  • Bronze or higher nails and strips x2
  • Temporal gear x2
  • Bronze or higher plate x2
  • Any solder bar x1
  • Soldering iron (used as a tool)

See the 'Trader Phone' page in the handbook for the crafting shape.

Note for 1.19
This mod supports VS v1.19 in mod version 0.1.*.
In the versions, the recipe requires ingots instead of nails and strips. 

Usage

To check a trader's stock, you need to get a phone number memo for that trader and register it to a Trader Phone.
First, place a Trader Phone and right-click it with a parchment to create a phone number memo (Blank).
Then, obtain a written memo either by using the blank memo on the trader or by searching for their location in the Trader Phone (you can right-click it with a blank memo to open the GUI).
Use the written memo on the Trader Phone to register, and after that, you can check the trader’s stock anytime by right-clicking the Trader Phone.

Step-by-step Guide

1. Create a blank memo

First, place a Trader Phone and right-click it with a parchment to obtain a phone number memo (Blank).

image

You have two ways to get a trader's phone number memo.

2-A. Directly use a blank memo on a trader

Go to the trader and right-click them with a blank memo.

You will obtain a written phone number memo immediately.

 

image

 

2-B. Phone number search

If you already know where the trader is, you can use the phone number search function in the Trader Phone.

  1. Right-click any Trader Phone with a blank memo to open the phone number search GUI
  2. Follow the instructions on the GUI; enter the trader's coordinates and click the 'Search' button
  3. If the phone successfully finds the trader, their details will be shown on the GUI
  4. Click the 'Write Down' button to obtain a written phone number memo

image

image

image

image

image

If 'Trader not found' was displayed in step 3, check the following and try again:

  • Auto-detecting Y may fail, so you might need to enter it manually.
  • If you took the coordinates from the map, zoom in and record them as accurately as possible.

3. Register the phone number memo to the Trader Phone and check the stock

Right-click the Trader Phone with the phone number memo obtained via 2-A or 2-B.

image

Once registered, you can right-click the Trader Phone anytime to check the assigned trader's stock.

image

Notes:

  • Use another written memo on the Trader Phone to reassign a different trader to it
  • A written phone number memo can be used multiple times
    • You can give it to another player so they can register it to their Trader Phone

Compatibility

- Day Trader by Darkbrook (tested version: v1.0.5)

Help/Contact

If you encounter any problems or have feature requests, please do one of the following:

  • Post in the forum thread for this mod on the Vintage Story Discord server (click the Homepage tab on this page).

These methods align with how I handle reports for other mods (even for other games), making it easier for me to track and respond.
Note: Comments on this page are rarely checked.

Note

Q. Is this mod terribly RAM-consuming?

A. No. This mod never keeps any chunk loaded nor trader entities on memory. Also my tests showed no unusual RAM usage.

The main potentially heavy process in this mod is loading chunk columns when searching traders or checking their stock.
First, the chunk loading never keep any chunk loaded nor keeps any trader entities on memory.
This is how I implemented it, and I verified it using `/stats` command and MemLeakInspector by elocrypt.

I also performed a test and it showed that the RAM usage is about the same as just walking/flying around the same area.
Moreover, in practice, searching/checking a trader loads only 4 chunk columns around them.
For comparison, when your view distance is 512, the game normally keeps about 450 chunk columns loaded around you.
So, using Trader Phone loads a few percent of what you'd load by visiting traders manually.

If you are curious about the test details, read on.

Test: Loading 4096 chunk columns

I performed a kind of volume test that forced the mod to load 4096 chunk columns through searching traders (note: it's equivalent to searching 1024 traders at once, which normally never happens).
This was performed in a standard survival world to reflect practical usage.
RAM usage comparison:
Before performing
  Client

  image
  Server
  image

  image

* Client RAM usage is obtained from the debug window (Ctrl + F3). Server one is obtained from `/stats` command.

After performing
  Client

  image
  Server

  image

  image
For those who are curious, here is the the RAM usage during performing:

  Client

  image

  Server

  image

  image

You can see that more than 30,000 chunks were loaded, but they were unloaded after the process finished.

 

I also measured RAM usage of normal chunk loading, which occures during flying around the same area, without this mod installed:

Before performing

  Client

  image
  Server

  image

  image

After performing
  Client

  image
  Server

  image

  image
As you can see, both cases have almost the same amount of RAM usage.
(Both server RAM usage increased ~700MB)
Note that both consumes more RAM after performing, even after they unloaded unused chunks.
From my observation, the value does go down over time, but slowly.
It doesn’t seem to be only GC issue, since force GC didn’t have any immediate effect.

 

ToDo

List

- Advanced Trader Phone
  - Multiple traders
- Stock GUI
  - Item slot (item visual)
  - Layout for better readability
    - Currently no concrete ideas
- Trader Phone model
  - Loving the current one's somewhat silly look, but it would be nice to have more cool/chic variants
    - Currently no concrete ideas
- Optimization
  - Stock result caching
- Make memo placeable in scrollrack and bookshelf
- More in-game guide
  - Handbook
  - Interaction tooltip

Mod Version Mod IdentifierFor Game version Downloads Released Changelog Download 1-click mod install*
0.3.0 remotetradercheckmod
1.21.0-rc.4 - 1.21.0-rc.5
1188 Aug 16th at 1:29 PM remotetradercheckmod_0.3.0.zip 1-click install

- Updated for VS 1.21

0.2.4 remotetradercheckmod 291 Aug 16th at 12:48 PM remotetradercheckmod_0.2.4.zip 1-click install

- Now each written phone number memo is colored by its trader type

0.2.3 remotetradercheckmod 1034 Feb 25th at 10:02 AM remotetradercheckmod_0.2.3.zip 1-click install

- Fixed crash when used with Day Trader mod

0.2.2 remotetradercheckmod 84 Feb 24th at 10:38 AM remotetradercheckmod_0.2.2.zip 1-click install

-  Added item stack display

0.2.1 remotetradercheckmod 279 Feb 14th at 11:49 AM remotetradercheckmod_0.2.1.zip 1-click install
  • Fixed incorrect mod name (only display issue)
  • A Trader Phone with an assigned trader can now accept another written memo to change its assignment
0.2.0 remotetradercheckmod 226 Feb 7th at 7:15 PM remotetradercheckmod_0.2.0.zip 1-click install

First release for 1.20

0.1.3 remotetradercheckmod 67 Feb 25th at 12:43 PM remotetradercheckmod_0.1.3.zip 1-click install

- Fixed crash when used with Day Trader mod

0.1.2 remotetradercheckmod 29 Feb 24th at 10:49 AM remotetradercheckmod_0.1.2.zip 1-click install

-  Added item stack display

0.1.1 remotetradercheckmod 40 Feb 14th at 12:13 PM remotetradercheckmod_0.1.1.zip 1-click install
  • Fixed incorrect mod name (only display issue)
  • A Trader Phone with an assigned trader can now accept another written memo to change its assignment
0.1.0 remotetradercheckmod 57 Feb 7th at 7:14 PM remotetradercheckmod_0.1.0.zip 1-click install

First release for 1.19


12 Comments (oldest first | newest first)

💬 ZeroAresIV, Nov 12th at 2:07 AM

You should add a phone book or let us store phone numbers on bookshelves

💬 PureWinter, Aug 8th at 8:30 AM

Oh wow this is exciting!

💬 Spoonail , Feb 25th at 2:12 PM

Aeonsteel

Fixed in v0.2.3

💬 Aeonsteel, Feb 24th at 2:49 PM

The latest update (0.2.2) is incompatible with "Day Trader". When you hover over an item in the phone the game crashes.

💬 PrivatePretzel, Feb 24th at 12:49 PM

What a fun and useful mod!

💬 Aeonsteel, Feb 19th at 6:09 PM

Can you make it so the trader restock time is in the UI you get when you're looking at something? Like how it says "Connected to XYZ the ABC trader at X, Y ,Z"

💬 spytv, Feb 17th at 3:27 PM

This is reallllyyy cool good stuff. keep up the amazing work! You Should look into compatbilty with other mods maybe? Just an idea!

 

 

💬 Spoonail , Feb 15th at 3:58 AM

In the latest version, you can reassign a different trader to a Trader Phone by using another written memo.
You no longer need to break and replace the phone to clear the assignment.

(Also, thanks for all the encouraging comments!)

💬 JohnWood, Feb 12th at 2:31 PM

Love the idea of this mod! I play on a big ocean world with many islands so finding and getting to traders is a bit of a journey everytime. Being able to check up on the traders with this mod will be of great help. Thank you! Excited to see the contents from your to-do list being added (in due time) :D

💬 Mendall, Feb 8th at 5:21 PM

Very interesting idea. The modders of this game are on a next level, in some games you find everyone making the same couple mod ideas over and over. Here at VS you never know what someone will come up with next. I look forward to trying this.

💬 Spoonail , Feb 8th at 3:36 AM

QuetzaCoco
Thanks!
Oh yeah I actually considered that once but forgot about it :P
Thanks again for reminding me! I'll add it to the ToDo list.

It might take some time since I need to add new GUI for selecting a trader.
Also, the feature will be part of an advanced Trader Phone, maybe one that requires cupronickel or something rare to craft.

💬 DrewBaranof, Feb 7th at 9:47 PM

Really awesome mod! Will there be plans to make the phone able to record multiple traders or is that a limitation? Breaking and placing it works but I was just curious. Good work!

 (edit comment delete)
Основной веб-сайт | Почтовый сервер | FTP сервер | Административная панель | API интерфейс | Content Delivery Network | Статические файлы | Ресурсы сайта | Изображения | Файловое хранилище | Блог | Интернет-магазин | Техническая поддержка | Справочная система | Документация | Форум | Новости | Загрузки | Демонстрация | Тестовая среда | Приложение | Медиа контент | Разработка | Промежуточная среда | Бета версия | Безопасная зона | Вход в систему | Панель управления | Портал | Система управления контентом