This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
dudearent006's profile picture

Dynet: Dynamic web page system (online stores and web sites!)

Started by dudearent006, 20 January 2014 - 11:31 AM
dudearent006 #1
Posted 20 January 2014 - 12:31 PM
Dynet is a dynamic internet system with support for hyperlinks, coloured webpages, multiple clients and servers, and most importantly, fully dynamic link actions and pages.

What are dynamic links and pages?
I've seen some computercraft internet systems before, but they all displayed static pages, pages whose content never changed (though I might be wrong, correct me if I am). Dynet allows it's pages to display any variable (say, redstone inputs, peripheral status, time, page hit counter etc.) and allow links to do anything (activate redstone, play music from a disk, make a turtle move etc.). This allows for some very awesome and useful functionality.

Here's a demonstration video of 3 different websites I've made with dynet to test it. It includes an online store that automatically updates stock values on the site (and automatically generates the pages based on what's in the chests), a buildcraft pipe routing server, and a music playing/redstone value changing demo server:

[media]http://www.youtube.com/watch?v=jt6eldbtJLs[/media]

Here's a video showing how to install Dynet:

[media]http://www.youtube.com/watch?v=YclwX3f3gk8[/media]

And here's the download link, including manuals and stuff: Download
Direct link
Edited on 20 January 2014 - 11:42 AM
SilverSatin #2
Posted 23 January 2014 - 10:03 AM
Holy cow :o/> THANK YOU VERY MUCH!!!!

this will be perfect for the new city world I'm building.
I'm currently working on a banking system with pay terminals in physical stores but having the ability to make online stores would be perfect for the warehouse districts.

Also just information websites could mean I can make advertisment billboards within the city pointing out websites that actually exist within the world.

This is fantastic ! Thank you very much for sharing this.
It will take a while before I get this fully integrated into my banking system and wireless network but hey it's already a wonderful head start.


I will feedback once I get it integrated within my wireless network system.
dudearent006 #3
Posted 25 January 2014 - 06:21 AM
Holy cow :o/> THANK YOU VERY MUCH!!!!

this will be perfect for the new city world I'm building.
I'm currently working on a banking system with pay terminals in physical stores but having the ability to make online stores would be perfect for the warehouse districts.

Also just information websites could mean I can make advertisement billboards within the city pointing out websites that actually exist within the world.

This is fantastic ! Thank you very much for sharing this.
It will take a while before I get this fully integrated into my banking system and wireless network but hey it's already a wonderful head start.


I will feedback once I get it integrated within my wireless network system.

Awesome, good luck! Do note, however, Dynet has no security features so online banking isn't very safe and could be hacked. This doesn't mean you can't make a separate program for banking with encrypted connections, through, or use Dynet in such a way that hacking it would be difficult. That's up to you, of course.

In other news, I've uploaded part 2 of the tutorial series, showing how to make basic web pages:
http://www.youtube.com/watch?v=-9srm9P5Vz0

And finally, looks like the changes coming to the latest version of computercraft are going to mean I need to make a lot of changes for dynet to work. looks like hostnames are now managed by rednet, meaning the DNS system would need some changing, and many commands now need a "protocol" argument, though I couldn't find out what that actually does or what protocols are available.
Parzivail #4
Posted 25 January 2014 - 12:26 PM
Sure! I would watch a lets play
dudearent006 #5
Posted 02 February 2014 - 09:25 AM
Sure! I would watch a lets play
I've already made a let's play series of the world, available here: http://www.youtube.com/playlist?list=PLVN9s9mCy-V1vhGOpiyyGOnovYdewGqgI

In other news, I've noticed a bug with the daintree server code: a chest with full stacks in each slot will crash the server. I may also fix fully dynamic pages being a little slow (client timeout while waiting for further lines) and finnish the last part of the manual.
masonisgood #6
Posted 21 May 2014 - 09:40 PM
you sir have made a good program
MKlegoman357 #7
Posted 21 May 2014 - 10:20 PM
Finally - released on CC forums! :D/>

I have seen some YouTube videos (about a month ago) about Dynet. Was waiting for you to release it on CC forums and now it's here! Nice job making this, looks great. I thought you will never put this here. +1 for you sir.
CometWolf #8
Posted 21 May 2014 - 10:40 PM
This topic is from January, he put it here a while ago :P/>
MKlegoman357 #9
Posted 21 May 2014 - 11:24 PM
This topic is from January, he put it here a while ago :P/>

Hmmmm……. [facepalm] How did I missed that?
skwerlman #10
Posted 22 May 2014 - 07:57 AM
Found a bug. When running a server, the second argument of getDynamicLine is always nil because line 30 in 'core' says
rednet.send(from,getDynamicLine(line,dats))
and dats is never defined.

Looking forward to more documentation :D/>
'settings' was hard to figure out…

EDIT: Found another bug. Even if you write a custom 404 page, it's never found by the server, because lines 70 and 71 in 'core' say
	elseif fs.exists(pageFolder.."404") then--page not found
		sendPage(pageFolder.."404",from)
instead of
	elseif fs.exists(pageFolder.."/404") then--page not found
		sendPage(pageFolder.."/404",from)
so the server looks for '/site404' instead of '/site/404'.

Also, if you press enter before typing any text into web's address prompt, it fails to detect that the user entered no text, and simply prints: "ERROR: I honestly have no idea what happened"
Here's a version of the enterPage() function that avoids this issue:
function enterPage()
	local popupText = "web address"
	while true do
		siteName,pageName=split(popup(popupText),"/")
		if not pageName or pageName=="" then
			pageName="/home"
		end
		if siteName and siteName~="" then
			break
		end
		popupText = "You didn't type any text!"
	end
	refresh()
end

I'll keep adding bugs/fixes to this post as I find them.
Edited on 23 May 2014 - 03:51 AM
daymx1 #11
Posted 29 June 2014 - 05:00 AM
Hey man, love your YouTube channel and dynet just are there going to be any updates?
LeotomasMC #12
Posted 04 July 2014 - 11:47 PM
error is
ERROR:
no response from ddns
please help me


local help =
if help == true then
  print("Thank you")
elseif help == false then
  print("WHY???")
else
  error("Help is not defined as 'true' or 'false'") --fixed
end
Edited on 04 July 2014 - 09:47 PM
Creator #13
Posted 02 February 2015 - 03:04 PM
Hi,

I am currently working on the IPnet. It's idea is to create a network of routers through which messages can be sent. Dynet sounds like html and http. If we combine the two projects, Dynet for webpages and IPnet for sending the webpages to their destination, we could acheive something like the internet. My project is not ready, but I am close. If you wish to see the protocol go to my pastebin: programcreator.

Please contact me if this is of any interest to you.
Creator
gametechish #14
Posted 22 March 2015 - 10:57 AM
Hi,

I am currently working on the IPnet. It's idea is to create a network of routers through which messages can be sent. Dynet sounds like html and http. If we combine the two projects, Dynet for webpages and IPnet for sending the webpages to their destination, we could acheive something like the internet. My project is not ready, but I am close. If you wish to see the protocol go to my pastebin: programcreator.

Please contact me if this is of any interest to you.
Creator
Dynet Isnt quite html or http its similar but the language it uses is very different. Also I heard of your protocol some time ago and like what your saying if you did it by yourself and I kind of dont like the language Dynet uses it doesn't have text centering you cant change the background of the entire page its a kind of meh language