I'm buffering a river using QGIS 3. I am using 30 meters for my buffer. My problem is the buffers came out as a circle, not following the lines.
This is what happens during my buffer
I can make a guess at what has happened. Did you "set" the coordinate system of the river to UTM 50N or did you actually reproject it? If the original line was digitized over a map in Long/Lat WGS84, you cannot just set the coordinate system to something else. The line coordinates are actually in Long/Lat degrees, not UTM.
I reset the River layer back to WGS84 (EPSG:4326) then I did a buffer at distance 0.0003 (approx = 30 meters, in degrees) and the result looks like:
What I suggest is:
Something has gone wrong with the georeferencing of the initial map you used. When I load your files into qgis and use the measurement tool, the river is 0.12 meters from end to end. I am afraid you need to redigitize it using a better map. The quickest way is probably to install the Open Layers plugin, then you can use Web -> Open Layers to load open street map or a number of other global background map.