> For the complete documentation index, see [llms.txt](https://risenova-scripts.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://risenova-scripts.gitbook.io/docs/risenova-black-market/locale.md).

# Locale

```json
{
  "Cancel mission?": "Cancel mission?",
  "No": "No",
  "Yes": "Yes",
  "Go back": "Go back",
  "Confirm deal": "Confirm deal",
  "Close": "Close",
  "PRIVATE NETWORK": "PRIVATE NETWORK",
  "BLACK": "BLACK",
  "MARKET": "MARKET",
  "ACCESS BY CONNECTION.": "ACCESS BY CONNECTION.",
  "◈   All merchandise": "◈   All merchandise",
  "◇   Direct purchases": "◇   Direct purchases",
  "⌁   Contract deals": "⌁   Contract deals",
  "YOUR CONTACT": "YOUR CONTACT",
  "No names. No questions.": "No names. No questions.",
  "Keep your end of the deal.": "Keep your end of the deal.",
  "●   ENCRYPTED CONNECTION": "●   ENCRYPTED CONNECTION",
  "OFF THE RECORD /": "OFF THE RECORD /",
  "CATALOG": "CATALOG",
  "The right connections.": "The right connections.",
  "Hard to find. Worth the favor.": "Hard to find. Worth the favor.",
  "Search merchandise…": "Search merchandise…",
  "Search merchandise": "Search merchandise",
  "RISENOVA UNDERGROUND EXCHANGE": "RISENOVA UNDERGROUND EXCHANGE",
  "ESC TO DISCONNECT   ↗": "ESC TO DISCONNECT   ↗",
  "CONFIRM YOUR DEAL": "CONFIRM YOUR DEAL",
  "CONTRACT OBJECTIVE": "CONTRACT OBJECTIVE",
  "CONTRACT IN PROGRESS": "CONTRACT IN PROGRESS",
  "Press": "Press",
  " to cancel": " to cancel",
  "SECURED CONNECTION": "SECURED CONNECTION",
  "Cancel ✕": "Cancel ✕",
  "Submit answer": "Submit answer",
  "ESC TO ABORT": "ESC TO ABORT",
  "IMAGE UNAVAILABLE": "IMAGE UNAVAILABLE",
  "Connection interrupted. Try again.": "Connection interrupted. Try again.",
  "Private contact": "Private contact",
  "REP ": "REP ",
  "PRIVATE DEAL": "PRIVATE DEAL",
  "Your favor. Your reward.": "Your favor. Your reward.",
  "HANDOFF": "HANDOFF",
  "CONTRACT": "CONTRACT",
  "BUY OR EARN A DISCOUNT": "BUY OR EARN A DISCOUNT",
  "CONTRACT EXCLUSIVE": "CONTRACT EXCLUSIVE",
  "READY TO TRADE": "READY TO TRADE",
  "From ": "From ",
  " AVAILABLE": " AVAILABLE",
  "No merchandise matches your search.": "No merchandise matches your search.",
  "Select an item to see the deal.": "Select an item to see the deal.",
  "TWO WAYS TO MAKE A DEAL": "TWO WAYS TO MAKE A DEAL",
  "A FAVOR FOR A FAVOR": "A FAVOR FOR A FAVOR",
  "DIRECT PURCHASE": "DIRECT PURCHASE",
  "Buy it now at full price, or complete a contract and collect it at a discount from a private contact.": "Buy it now at full price, or complete a contract and collect it at a discount from a private contact.",
  "This item requires a contract. Complete the job, then pay the agreed price at the private handoff.": "This item requires a contract. Complete the job, then pay the agreed price at the private handoff.",
  "Available right here. One item, one payment. No loose ends.": "Available right here. One item, one payment. No loose ends.",
  "Availability": "Availability",
  "Reputation": "Reputation",
  "Full price": "Full price",
  "Contract price": "Contract price",
  " units": " units",
  " required": " required",
  "% off)": "% off)",
  "Not offered": "Not offered",
  "Buy now · ": "Buy now · ",
  "Do contract · ": "Do contract · ",
  "Purchase one ": "Purchase one ",
  " now for ": " now for ",
  "? No contract is required.": "? No contract is required.",
  "Accept this timed job? Your item will be reserved. After completion, pay ": "Accept this timed job? Your item will be reserved. After completion, pay ",
  " at the private handoff.": " at the private handoff.",
  "Out of stock.": "Out of stock.",
  "You need more reputation to purchase this item.": "You need more reputation to purchase this item.",
  "Contracts: no payment now. Pay at pickup after completing the job.": "Contracts: no payment now. Pay at pickup after completing the job.",
  "Payment is taken immediately.": "Payment is taken immediately.",
  "RESERVED FOR YOU": "RESERVED FOR YOU",
  "ACTIVE CONTRACT": "ACTIVE CONTRACT",
  "Your contact is ready. Complete the purchase and keep moving.": "Your contact is ready. Complete the purchase and keep moving.",
  " minutes remaining": " minutes remaining",
  " — Step ": " — Step ",
  "Complete purchase ↗": "Complete purchase ↗",
  "Restore GPS ↗": "Restore GPS ↗",
  "Pay ": "Pay ",
  " and collect your reserved item?": " and collect your reserved item?",
  "Cancel contract": "Cancel contract",
  "Walk away?": "Walk away?",
  "Your reservation will be released. The cooldown will still apply.": "Your reservation will be released. The cooldown will still apply.",
  "Unable to cancel the mission.": "Unable to cancel the mission.",
  "The deal could not be completed. Try again.": "The deal could not be completed. Try again.",
  "Memorize the code. Enter it after the preview disappears.": "Memorize the code. Enter it after the preview disappears.",
  "Connect the numbered wires in the order shown. Each number identifies one wire.": "Connect the numbered wires in the order shown. Each number identifies one wire.",
  "Solve the terminal calculation. Complete the brackets first, then enter the result.": "Solve the terminal calculation. Complete the brackets first, then enter the result.",
  "Wire ": "Wire ",
  "ENTER CODE": "ENTER CODE",
  "TIME LEFT: ": "TIME LEFT: ",
  "MEMORIZE · ": "MEMORIZE · ",
  "Easy": "Easy",
  "Medium": "Medium",
  "Hard": "Hard",
  "Vehicle acquisition": "Vehicle acquisition",
  "Contract": "Contract",
  "Contract objective": "Contract objective",
  "Collect the package": "Collect the package",
  "Hand over the package": "Hand over the package",
  "Speak to ": "Speak to ",
  "Collect ": "Collect ",
  "The contact did not answer. Try again.": "The contact did not answer. Try again.",
  "Step out of the vehicle to speak to the contact.": "Step out of the vehicle to speak to the contact.",
  "The contact is unavailable. Try again.": "The contact is unavailable. Try again.",
  "Approach the contact on foot.": "Approach the contact on foot.",
  "Exchange cancelled. Your reserved item is still available until the pickup expires.": "Exchange cancelled. Your reserved item is still available until the pickup expires.",
  "The exchange could not be completed. Try again.": "The exchange could not be completed. Try again.",
  "You have no active contract.": "You have no active contract.",
  "You do not have enough money.": "You do not have enough money.",
  "Delivery failed; payment refunded.": "Delivery failed; payment refunded.",
  "Deal complete. Stay frosty.": "Deal complete. Stay frosty.",
  "This contact will not deal with you.": "This contact will not deal with you.",
  "Return to the city first.": "Return to the city first.",
  "Contract cancelled.": "Contract cancelled.",
  "The dealer is not here.": "The dealer is not here.",
  "This deal is unavailable.": "This deal is unavailable.",
  "Earn this deal with a contract first.": "Earn this deal with a contract first.",
  "This item is available for direct purchase only.": "This item is available for direct purchase only.",
  "Finish or cancel your current contract first.": "Finish or cancel your current contract first.",
  "Lay low for another ": "Lay low for another ",
  " minutes.": " minutes.",
  "The car is not ready. Try again shortly.": "The car is not ready. Try again shortly.",
  "The vehicle could not be arranged.": "The vehicle could not be arranged.",
  "Unknown mission type.": "Unknown mission type.",
  "The contract was cancelled.": "The contract was cancelled.",
  "The vehicle key system is unavailable. Contact the server staff.": "The vehicle key system is unavailable. Contact the server staff.",
  ". Follow the GPS.": ". Follow the GPS.",
  "Collect the marked vehicle. The keys are inside.": "Collect the marked vehicle. The keys are inside.",
  "Collect the package at the GPS location.": "Collect the package at the GPS location.",
  "No active contract.": "No active contract.",
  "Get to your current puzzle objective first.": "Get to your current puzzle objective first.",
  "Get closer to your objective.": "Get closer to your objective.",
  "Speak to the contact.": "Speak to the contact.",
  "Complete the puzzle first.": "Complete the puzzle first.",
  "Bring the assigned vehicle and sit in the driver seat.": "Bring the assigned vehicle and sit in the driver seat.",
  "The vehicle is damaged or still syncing. Wait a moment and try again.": "The vehicle is damaged or still syncing. Wait a moment and try again.",
  "Bring it to the new GPS location.": "Bring it to the new GPS location.",
  "Get closer to your contact.": "Get closer to your contact.",
  "Invalid request.": "Invalid request.",
  "Please wait a moment.": "Please wait a moment.",
  "The market database is not ready. Contact a server administrator.": "The market database is not ready. Contact a server administrator.",
  "Your character session changed. Try again.": "Your character session changed. Try again.",
  "The contact is unavailable. Check server logs.": "The contact is unavailable. Check server logs.",
  "Contract cancelled: your character session ended.": "Contract cancelled: your character session ended.",
  "Contract cancelled: you died.": "Contract cancelled: you died.",
  "The pickup window expired. The contact has left.": "The pickup window expired. The contact has left.",
  "The contract time limit expired.": "The contract time limit expired.",
  "The assigned vehicle was removed from the server. Contact the dealer again.": "The assigned vehicle was removed from the server. Contact the dealer again.",
  "The assigned vehicle was destroyed. The contract is cancelled.": "The assigned vehicle was destroyed. The contract is cancelled.",
  "Finish the current puzzle first.": "Finish the current puzzle first.",
  "Too many failed attempts. The contract is burned.": "Too many failed attempts. The contract is burned.",
  "Wait ": "Wait ",
  " seconds before retrying.": " seconds before retrying.",
  "This puzzle is no longer active.": "This puzzle is no longer active.",
  "The contract is burned. Too many failed attempts.": "The contract is burned. Too many failed attempts.",
  "Puzzle failed. ": "Puzzle failed. ",
  " attempts remaining.": " attempts remaining.",
  "Good work. Follow the GPS. My guy has what you asked for. Bring $": "Good work. Follow the GPS. My guy has what you asked for. Bring $",
  "Your inventory is full.": "Your inventory is full.",
  "Trouble at the old spot. I have moved to a different location": "Trouble at the old spot. I have moved to a different location",
  "Hidden cache": "Hidden cache",
  "Open the hidden cache": "Open the hidden cache",
  "Deliver the sealed cache": "Deliver the sealed cache",
  "Scattered shipment": "Scattered shipment",
  "Collect the first package": "Collect the first package",
  "Unlock the second package": "Unlock the second package",
  "Collect the final package": "Collect the final package",
  "Deliver the complete shipment": "Deliver the complete shipment",
  "Cut the connection": "Cut the connection",
  "Disable the first relay": "Disable the first relay",
  "Disable the backup relay": "Disable the backup relay",
  "Give the relay report to the technician": "Give the relay report to the technician",
  "Ghost protocol": "Ghost protocol",
  "Decode the terminal challenge": "Decode the terminal challenge",
  "Copy the rotating access code": "Copy the rotating access code",
  "Deliver the stolen data": "Deliver the stolen data",
  "Lockpick": "Lockpick",
  "Pistol": "Pistol",
  "Micro SMG": "Micro SMG",
  "Taking the sealed package": "Taking the sealed package",
  "Checking the package seal": "Checking the package seal",
  "Handing over the shipment": "Handing over the shipment",
  "Letting the contact check the goods": "Letting the contact check the goods",
  "Checking the cache contents": "Checking the cache contents",
  "Securing the recovered package": "Securing the recovered package",
  "Checking the supply manifest": "Checking the supply manifest",
  "Collecting the next supply crate": "Collecting the next supply crate",
  "Disabling the relay with the technician": "Disabling the relay with the technician",
  "Verifying the relay is offline": "Verifying the relay is offline",
  "Extracting the terminal data": "Extracting the terminal data",
  "Saving the decrypted files": "Saving the decrypted files",
  "Copying the access credentials": "Copying the access credentials",
  "Checking the recovered access code": "Checking the recovered access code",
  "Passing the evidence to the contact": "Passing the evidence to the contact",
  "Confirming the job is finished": "Confirming the job is finished",
  "Checking the goods with your contact": "Checking the goods with your contact",
  "Arranging the final exchange": "Arranging the final exchange",
  "Checking the vehicle details": "Checking the vehicle details",
  "Confirming the assigned car": "Confirming the assigned car",
  "Checking the delivered vehicle": "Checking the delivered vehicle",
  "Confirming the vehicle drop-off": "Confirming the vehicle drop-off",
  "Black Market": "Black Market",
  "Item unavailable or inventory full.": "Item unavailable or inventory full.",
  "to cancel": "to cancel"
}
```

1. Copy the "template" section
2. Rename "template" to your language code, for example "fr.json"
3. Add the new file into the folder `lang/`
4. Translate only the text on the right side
5. Keep all keys exactly the same
6. Set Config.Locale = "fr"
